sql多表聯結 三張表聯結 查詢

2021-10-25 18:04:39 字數 1559 閱讀 2874

今天看了一道sql的題,

這個查詢需要聯結三張表,具體的**內容參考 參考鏈結

很自然的想到了內聯結,但是之前做的大部分都是兩張表的內連線,這次是三張表,在網上搜也都是講兩張表的內連線,這裡總結一下:

selecta.

sname,b

.cname,c

.degree

from

student

ainner

join

course

binner

join

scorecon

a.sno=c.

snoandb.

cno=c.

cno;

實際上也很簡單,直接在後面又加了乙個inner join關鍵字,聯結另外一張表。

還有另外一種寫法,不使用inner join關鍵字,是參考的sql必知必會上面的。

select

s.sname

, c.

cname

, sc.

degree

from

student s,

score sc,

course c

where

s.sno = sc.

snoand sc.

cno= c.

cno;

兩種都可以,結果是一樣的,至於哪種寫法效率高點,這個我還不清楚。

執行結果:

+

----

----+--

----

----

-------

+--------+

|sname

|cname

|degree|+

----

----+--

----

----

-------

+--------+

| 曾華 | 計算機導論 |

78.0

|| 曾華 | 資料電路 |

81.0

|| 匡明 | 作業系統 |

75.0

|| 匡明 | 計算機導論 |

88.0

|| 王麗 | 計算機導論 |

91.0

|| 李軍 | 計算機導論 |

64.0

|| 李軍 | 資料電路 |

85.0

|| 王芳 | 作業系統 |

68.0

|| 王芳 | 計算機導論 |

76.0

|| 陸君 | 作業系統 |

86.0

|| 陸君 | 計算機導論 |

92.0|+

----

----+--

----

----

-------

+------

--+

SQL使用子查詢 聯結表 建立高階聯結

利用子查詢進行過濾select cust name,cust contact from customers where cust id in select cust id from orders where order num in select order num from orderitems ...

查詢去除空值 SQL多表查詢 join表聯結

在之前的學習和練習中,所有的操作都是在一張表中進行操作,實際工作中,我們期望得到的資料往往分散在不同的表中,今天我將帶大家一起學會從多張表中獲取資料。表的加法在sql語句中用union表示,是按行將表中資料合併到一起。重複的資料只保留乙個。若想要保留表中重複的行,則使用union all。如何合併兩...

SQL查詢表的內聯結

資料庫中我們常用的查詢方法是聯表查詢,這種查詢方法可以實現一次查詢出多張表的資料,只要把主表的資料查詢出來,副表的資料就一起顯示出來了,是不是很方便呢。不過前提是,要先把表聯結起來,表與表之間是通過關係列關聯起來的。有關係好辦事,生活中是這樣,資料庫也是如此,都要靠關鍵節點。內聯結 inner jo...