聯表查詢
內連線外來鍵約束
limit
3--# 顯示3條
limit1,
3--# 顯示3條 偏移1個位置
-- # 更新操作時limit只能有乙個引數
update
user
set age = age+
3limit
3
左連線
left join on
左外連線包含left join左表所有行,如果左表中某行在右表沒有匹配,則結果中對應行右表的部分全部為空(null)。
select
*from student left
join course on student.id=course.id
右連線
right join on
右外連線包含right join右表所有行,如果左表中某行在右表沒有匹配,則結果中對應左表的部分全部為空(null)。
select
*from course right
join studenton student.id=course.id
全連線
full join
完全外連線包含full join左右兩表中所有的行,如果右表中某行在左表中沒有匹配,則結果中對應行右表的部分全部為空(null),如果左表中某行在右表中沒有匹配,則結果中對應行左表的部分全部為空(null)。
select
*from student full
join course on student.id=course.id
join 或 inner join
內連線是比較運算子,只返回符合條件的行。
select
*from student inner
join course on student.id=course.id
constraint 《外鍵名》] foreign key 欄位名 [,欄位名2,…]
references 《主表名》 主鍵列1 [,主鍵列2,…]
表 tb_dept1
mysql>
create
table tb_dept1
->(-
> id int(11
)primary
key,
-> name varchar(22
)not
null,-
> location varchar(50
)->
);
表 tb_emp6
mysql>
create
table tb_emp6
->(-
> id int(11
)primary
key,
-> name varchar(25
),-> deptid int(11
),-> salary float,-
>
constraint fk_emp_dept1
->
foreign
key(deptid)
references tb_dept1(id)
->
);
sql 語句 聯表查詢
1 replace into 用replace into 替代insert into 根據唯一主鍵判斷 無則插入,有則刪除重新插入 覆蓋 不適用自增id做主鍵。因為會刪除id.2.同表 分銷查詢下級每代的人數 內聯查詢 獲取第二代的人 select a.user name,a.reg time,a....
MySQL聯表查詢
顯示所有員工名字 emp.ename 員工工資 emp.sal 及所在部門的名字 dept.dname 笛卡爾積 emp num dept num 聯表查詢時一定要帶上關聯條件 select ename,sal,dname from emp,dept where emp.deptno dept.de...
sql語句聯表查詢之(join on)
表1 表的結構 bumen create table if not exists bumen bid int 10 not null auto increment,mingcheng varchar 30 default null,jingli varchar 30 default null,tel...