首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

MySQL数据库——连接查询

概述: 连接查询的作用将多张表进行内容上的连接,查看数据时可以同时看到多张表的多个数据 连接查询的分类 内连接查询连接查询连接查询连接查询 语法 #内连接 SELECT * FROM...#自连接 SELECT * FROM a_table a inner join a_table a on a.a_id = a.b_id; 分类 内连接查询 inner join 实现多表查询查询共有记录...SELECT * FROM 表1 inner join 表2 on 表1.字段=表2.字段 左连接查询 left join 以左表为主,查询右表的数据。若右表不存在数据,则返回null。...SELECT * FROM 表1 left join 表2 on 表1.字段=表2.字段 右连接查询 right join 以右表为主,查询左表的数据。若左表不存在数据,则返回null。...SELECT * FROM 表1 right join 表2 on 表1.字段=表2.字段 自连接查询 inner join 左表和右表是同一个表,查询两个表中的数据。

53.8K85

MySQL数据库——多表查询之内连接查询、外连接查询、子查询

1.2 多表查询的分类 1.2.1 内连接查询 1)隐式内连接:使用where条件来消除无用的数据; -- 查询所有员工信息和对应的部门信息 SELECT *FROM emp,dept WHERE emp...`id`; 3)内连接查询注意事项: 从哪些表中查询; 条件是什么; 查询哪些字段; 1.2.2 外连接查询 1)左外连接查询的是左表所有的数据及其交集部分。...`id`; -- 使用左外连接查询 SELECT t1.*,t2.`NAME` FROM emp t1 LEFT JOIN dept t2 ON t1.`dept_id` = t2....2)右外连接查询的是右表所有的数据及其交集部分。...`id` = t2.dept_id; 使用普通内连接方法也可以实现: SELECT *FROM emp t1,dept t2 WHERE t1.`dept_id`= t2.`id` AND t1.

11.8K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    ⑧【MySQL数据库查询:内连接、外连接、自连接、子查询、多表查询

    、子查询、多表查询MySQL数据库查询 1....内连接 —— INNER JOIN 连接查询 —— 内连接: 内连接: ①隐式内连接 SELECT 字段列表 FROM 表1,表2 WHERE 连接条件...; ②显示内连接 SELECT 字段列表 FROM...—— LEFT OUTER JOIN 连接查询 —— 左外连接: 外连接 —— 左外连接: ①查询表1所有数据,包含表1和表2交集部分的数据。...`id`; 右外连接 —— RIGHT OUTER JOIN 连接查询 —— 右外连接连接 —— 右外连接: ①查询表2所有数据,包含表1和表2交集部分的数据。...`id`; 自连接 —— JOIN 连接查询 —— 自连接: 自连接: ①自连接查询,可以是内连接查询,也可以是外连接查询 SELECT 字段列表 FROM 表1 别名A JOIN 表1 别名B ON

    48180

    数据库-多表查询-连接查询

    数据库-多表查询-连接查询 同时查询多张表获取到需要的数据 比如:我们想查询到开发部有多少人,需要将部门表和员工表同时进行查询 多表查询的分类: 准备数据 -- 创建部门表 create table...使用内连接查询: 无法查询出 dept_id 为 null 的 沙僧 数据,此时就要以 右表 emp 为准,使用右连接查询所有数据 mysql> select * from dept d inner join...使用右外连接查询: 基于右连接查询,不管 emp 的数据有没有关联 dept_id, 也可以查询出右表中的所有数据 mysql> select * from dept d right join emp...全外连接查询 full(Mysql不支持,Oracle支持,了解就可以) 在上面的操作中,我们已经执行了 左外连接 和 右外连接。那么如果我们想要两张表的所有数据同时查询出来呢?...联合查询 Union (Mysql 支持) Mysql 为了查询所有表的关联数据,可以将左右连接查询 联合一起来执行。

    13.5K20

    MySQL【三】---数据库查询详细教程{分页、连接查询、自关联、子查询数据库设计规范}

    select * from student order by age asc limit 5,2; 2.连接查询【多表使用】 多个表里合并数据时使用,目前创建了两个表【见相关文章2】 链接查询:inner...primary key, -> cid int, -> atitle varchar(20), -> pid int); show tables;  直接输入cmd 在此启动mysql...4.2列级子查询 查询学生的班级号能对应学生的信息: select * from students where cls_id in (select id from classes);  5.数据库设计...一般来说,数据库只需要满足第三范式就行了。 5.1.2 第一范式:保证每列的原子性 第一范式是最基本的范式。如果数据库表中的所有字段值都是不可分解的原子值,就说明该数据库满足了第一范式。  ...多值属性(multivalued attributes)用两条线与实体连接,eg:hobbies属性(一个人可能有多个hobby,如reading,movies…)。

    1.6K20

    MySQL数据库:第八章:连接查询

    回退至Mysql数据库理论与实战 #进阶7:连接查询 理解:查询语句中涉及到的字段来自于多张表,将这种查询称为多表连接查询 语法:select 查询列表 from 表名1,表名2; 引入案例: select...连接查询的分类 ★: sql92语法: 内连接 等值连接 非等值连接连接连接(支持的不太好,mysql压根不支持) sql99语法: 内连接 等值连接 非等值连接连接连接 左外连接 右外连接...全外连接mysql不支持) #---------------------------------Sql92语法-------------------------------- #内连接 #一、等值连接...3、等值连接查询查询的结果为两个表的交集部分 4、n表连接,至少需要n-1个连接条件 #①简单的两表连接 #案例:查询员工名和部门名 SELECT e.last_name,d.department_name...3、等值连接查询查询的结果为两个表的交集部分 4、n表连接,至少需要n-1个连接条件 #案例:查询部门中员工个数>10的部门名,并按部门名降序 SELECT COUNT(*) 员工个数,department_name

    48620

    MySQL数据库:第八章:连接查询

    回退至Mysql数据库理论与实战#进阶7:连接查询理解:查询语句中涉及到的字段来自于多张表,将这种查询称为多表连接查询语法:select 查询列表 from 表名1,表名2;引入案例:select name...boyname from beauty,boys;select name,boyname from beauty,boys where boyfriend_id = boys.id;笛卡尔乘积:现象:表1和表2连接...,结果为两表的完全连接结果,数据不正确表1m行,表2 n行,结果为:m*n 行产生原因:没有有效的连接条件解决办法:添加两个表的连接条件★ 找到两个表的关联关系。...连接查询的分类 ★:sql92语法:内连接等值连接非等值连接连接连接(支持的不太好,mysql压根不支持)sql99语法:内连接等值连接非等值连接连接连接左外连接右外连接全外连接mysql不支持...)#---------------------------------Sql92语法--------------------------------#内连接#一、等值连接语法:select 查询列表from

    17030

    建立数据库链接_html连接数据库

    建立数据库链接 CREATE [public] DATABASE LINK 数据库链接名 CONNECT TO 用户名 IDENTIFIED BY 密码 USING ‘数据库连接字符串’; 说明:...1.一般情况PUBLIC由数据库管理员来创建;个人用户可以不加public,是私有的数据库链接; 2.’数据库连接字符串’可以用NET8 EASY CONFIG或者直接修改TNSNAMES.ORA...有CREATE session普通权限; 数据库全局名称可以用以下命令查出 SELECT * FROM GLOBAL_NAME; 查询远端数据库里的表 SELECT …… FROM 表名@数据库链接名;...查询数据库连接 select * from user_db_links; 删除数据库连接 DELETE USER_DB_LINKS; DROP (PUBLIC) DATABASE LINK DBaseLinkToCompany...; 发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/193183.html原文链接:https://javaforall.cn

    2.4K20

    mysql连接远程数据库_plsql连接远程数据库

    新安装的 MySQL 只有一个 root 用户,默认不开启远程连接。下面以 Ubuntu 系统下的 MySQL 为例,说明如何远程连接 MySQL 数据库。...mysql 数据库 mysql> quit Bye ubuntu@MyUbuntu:~$ mysql -uroot -pyongdu -h127.0.0.1 Welcome to the MySQL...ip 可以连接,同时给 admin 赋权进行所有操作 执行 flush privileges;,使上述设置生效 再次查看 user 表,按 admin 查询 mysql> select host,user...Your MySQL connection id is 36 成功登陆,下面在 windows 下用 Navicat 工具连接到 msql 数据库,虚拟机和主机需联网 测试成功后点击确定 连接完成...发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/182347.html原文链接:https://javaforall.cn

    31.7K31

    MySQL数据库,深入了解连接查询及原理(一)

    当我们查询的数据来源于多张表的时候,我们需要⽤到连接查询连接查询使⽤率⾮常⾼,是学习数据库必须掌握的。 内容提要: 1. 笛卡尔积 2. 内连接 这是Mysql系列第11篇。...环境:mysql5.7.25,cmd命令中进⾏演⽰。 3. 外连接 4. 左连接 5. 右连接 6. 表连接的原理 7. 使⽤java实现连接查询,加深理解 准备数据 2张表: t_team:组表。...eleB); } } } 示例1:有连接条件 查询员⼯及所属部门 mysql> select t1.emp_name,t2.team_name from t_employee t1 inner join...示例2:⽆连接条件 ⽆条件内连接,上升为笛卡尔积,如下: mysql> select t1.emp_name,t2.team_name from t_employee t1 inner join t_team...查询架构组的员⼯,3种写法 mysql> select t1.emp_name,t2.team_name from t_employee t1 inner join t_team t2 on t1.

    62330

    MySQL数据库,深入了解连接查询及原理(二)

    连接连接涉及到2个表,分为:主表和从表,要查询的信息主要来⾃于哪个表,谁就是主 表。外连接查询结果为主表中所有记录。...如果从表中有和它匹配的,则显⽰匹配的值,这部分 相当于内连接查询出来的结果;如果从表中没有和它匹配的,则显⽰null。...最终:外连接查询结果 = 内连接的结果 + 主表中有的⽽内连接结果中没有的记录。 外连接分为2种: 左外链接:使⽤left join关键字,left join左边的是主表。...左连接 语法 select 列 from 主表 left join 从表 on 连接条件; 示例1: 查询所有员⼯信息,并显⽰员⼯所在组,如下: mysql> SELECT t1.emp_name,...第2个sql连接条件t1.a>10,这个条件只关联了test1表,再看看结果,是否可以理解?不 理解的继续向下看,我们⽤java代码来实现连接查询

    44630

    MySQL数据库查询

    连接查询 - 内连接 1、连接查询的介绍 连接查询可以实现多个表的查询,当查询的字段数据来自不同的表就可以使用连接查询来完成。...连接查询可以分为: 内连接查询连接查询连接查询连接查询 2、内连接查询 查询两个表中符合条件的共有记录 内连接查询效果图: 内连接查询语法格式: select 字段 from 表1 inner...“交集” 连接查询 - 左连接 1、左连接查询 以左表为主根据条件查询右表数据,如果根据条件查询右表数据不存在使用null值填充 左连接查询效果图: 左连接查询语法格式: select 字段 from...连接查询 - 自连接 1、自连接查询 左表和右表是同一个表,根据连接查询条件查询两个表中的数据。...SQL语句,子查询被嵌入到一对小括号里面 数据库设计之三范式 1、数据库设计之三范式的介绍 范式: 对设计数据库提出的一些规范,目前有迹可寻的共有8种范式,一般遵守3范式即可。

    18.5K20
    领券