sql連線查詢,子查詢和分頁查詢

2021-10-07 11:35:15 字數 1079 閱讀 5334

內連線查詢,有效的去除笛卡爾積,分兩種:

根據所使用的比較方式不同,內連線分為等值連線、自然連線和自連線三種

舉乙個自連線例子:

select e.name,m.name

from employees e

join employees m

on e.id = m.id;

分為左外連線和右外連線,用於查詢乙個表中有另乙個表中沒有的記錄

查詢結果 = 內連線結果 + 主表中有從表中沒有的記錄

子查詢就是查詢中還有查詢,就是一條select語句結果作為另外一條select語法的一部分(查詢結果,查詢條件,表等)

比如:查詢本公司工資最高的員工的詳細資訊

select

*from emp

where sal=

(select

max(sal)

from emp

);

作為條件有以下幾種情況

單行單列:可以使用=,>,<,>=,<=,!=

多行單列:可以用all any in not in

舉例:select * from emp where sal> all(select sal from emp where tno=1)

行子查詢(一行多列,多行多列):

一行多枚舉例

select

*from employees

where

(employees.sal)=(

select

min(sal)

,max

(sal)

from employees

);

當顯示的資料一頁顯示不全,需要分頁提交

語法:最後加 limit [offset,] size;

offset::要顯示的起始索引(從0開始)

size:要顯示的條目個數

例如:查詢前五條員工資訊

select

*from employees limit0,

5;

sql 連線查詢 子查詢 聯合查詢

連線查詢 多表查詢 基本含義 連線就是指兩個或2個以上的表 資料來源 連線起來成為乙個資料來源 實際上,兩個表的完全的連線是這樣的乙個過程 左邊的表的每一行,跟右邊的表的每一行,兩兩互相 橫向對接 後所得到的所有資料行的結果。注意 連線之後,並非形成了乙個新的資料表,而只是一種 記憶體形態 基本形式...

子查詢 聯合查詢和連線查詢

查詢中巢狀查詢。如 select from select cname,cid from tblclass union select dname,did from department as t1 order by cname 將多個結果集合並成乙個結果集,前提是列數相同,並且相應的列的型別相同。判斷...

SQL 子查詢和表連線

一條搜尋語句他的過濾條件 於另乙個搜尋語句的select結果 select cust name,cust contact from customers where cust id in select cust id from orders where order num in select orde...