外部結合、内部結合を持つマルチテーブルクエリ

複数のテーブルのクエリ:テーブルの部署と従業員テーブルを作成し、データを挿入

代码块
use company;

#创建部门表
CREATE TABLE department (
id int PRIMARY key  auto_increment,
dep_name varchar(10) not null
);

#创建员工表
CREATE TABLE employee(
id int PRIMARY key auto_increment,
emp_name varchar(10) not null,
dep_id int
-- CONSTRAINT dep_id_fk  FOREIGN key (dep_id) REFERENCES company(id) on DELETE CASCADE on UPDATE CASCADE
#上面的外键约束没有也可以,外键约束不影响表与表之间关联,影响的是表插入数据的约束
);

#向部门表中插入数据
insert into  department(dep_name) VALUES ('网盟营销'),('大数据中心')

#向员工表中插入数据
insert into employee(emp_name,dep_id) VALUES('wangsiyu',1),('alex',2)

従業員のID、名前、部署(接続で暗黙的)の名前を問い合せます。

代码块
select employee.id,emp_name,dep_name from employee,department WHERE department.id=employee.dep_id;
注意:对于两个表都同名的字段,应该在查询该字段的前面加上对应的表,否则电脑不知道你这个字段是哪个表的

明示的な内部接続:のみに接続された整合ライン

select * from employee inner join department on employee.dep_id=department.id;

左の表の左側に接続されているすべてのレコードを表示します

select * from employee left join department on employee.dep_id=department.id;

右の接続:すべての権利テーブルレコード

select * from employee right join department on employee.dep_id=department.id;

完全に接続されている:すべては、2つのテーブルを記録し、それが空の対応することを意味しません

select * from employee full join department on employee.dep_id=department.id;

クエリに参加

ポイントのように歩いて、上のホールド

おすすめ

転載: www.cnblogs.com/hellosiyu/p/12501659.html