一、連線查詢
1.笛卡爾積
#笛卡爾積 後面沒有where 條件,會查詢出很多無效的資料
select p.
*,g.
*from product p,category g;
2.內連線
隱式內連線(隱式內連線接條件用where,用on錯誤)
select p.
*,g.
*from product p, category g where p.cno=g.cid;
#select p.*,g.* from product p,category g on p.cno=g.cid;
顯示內連線(inner可以省略掉,where/on都可執行)
select p.
*,g.
*from product p inner
join category g on p.cno=g.cid;
3.左外連線(以左表為依據)
select p.
*,g.
*from product p left
outer
join category g on p.cno=g.cid;
4.右外連線(以右表為依據)
select p.
*,g.
*from product p right
outer
join category g on p.cno=g.cid;
5.完全連線
#oracle裡面full join
select p.
*,c.
*from product p full
join category c on p.cno=c.cid;
# mysql 裡面做完全連線union
select p.
*,g.
*from product p left
outer
join category g on p.cno=g.cid
union
select p.
*,g.
*from product p right
outer
join category g on p.cno=g.cid;
6.不等連線
#on 等值連線才能使用on
select p.
*,g.
*from product p, category g where p.cno!=g.cid;
7.自然連線
#當欄位名稱相同進行連線,並且去除掉重複的列
select
*from product p natural
join category c;
二、子查詢# 1.查詢出編號為小公尺手機所屬的類名
#1.查詢小公尺所在的分類編號
select cno from product where pname=
"小公尺mix4"
;#2.查詢該分類編號的類名
select cname from category where cid=
(select cno from product where pname=
"小公尺mix4"
);
SQL多表連線查詢
本文主要列舉兩張和三張表來講述多表連線查詢。新建兩張表 表1 student 截圖如下 表2 course 截圖如下 此時這樣建表只是為了演示連線sql語句,當然實際開發中我們不會這樣建表,實際開發中這兩個表會有自己不同的主鍵。一 外連線 外連線可分為 左連線 右連線 完全外連線。1 左連線 lef...
SQL多表連線查詢
本文主要列舉兩張和三張表來講述多表連線查詢。新建兩張表 表1 student 截圖如下 表2 course 截圖如下 此時這樣建表只是為了演示連線sql語句,當然實際開發中我們不會這樣建表,實際開發中這兩個表會有自己不同的主鍵。一 外連線 外連線可分為 左連線 右連線 完全外連線。1 左連線 lef...
SQL多表連線查詢
本文主要列舉兩張和三張表來講述多表連線查詢。新建兩張表 表1 student 截圖如下 表2 course 截圖如下 此時這樣建表只是為了演示連線sql語句,當然實際開發中我們不會這樣建表,實際開發中這兩個表會有自己不同的主鍵。一 外連線 外連線可分為 本文主要列舉兩張和三張表來講述多表連線查詢。新...