假設a(m,n,p),b(m,n,p)
--1.a表中有某一項m而b表中沒有
使用左連線查詢:
select a.* from a a left join b b on a.m=b.m where b.m is null;
左連線查詢公共部分以及a表中的全部資料,b表中該列值為null的資料即為a中存在而b中不存在的結果。
--2.a表中沒有某一項m而b表中有
可改為使用右連線查詢:
select b.* from a a right join b b on a.m=b.m where a.m is null;
與上一條類似,只是這次判斷a表中不存在而b表中存在的結果,右連線查詢公共部分以及b表中的全部資料。
--3.查詢a表與b表中某一項m一致,而有其它項不一致的情況,其它幾項只要有一項滿足不一致則輸出查詢結果,sql語句如下:
select a.m,a.n,a.p,b.m,b.n,b.p from a a join b b on a.m=b.m where a.n<>b.n or a.p<>b.p;
使用了join...on...的連線查詢,在此語句中判斷不相等的語法為<>,在這裡也可寫為!=,此查詢為查詢兩個表共同的部分。
sql語句小練習二
1 建立乙個資料庫studentmanage,初始化大小10m,不足以1m每次增長 create database studentmanage on name studentmanage data filename d studentmanage data.mdf size 10mb,maxsize...
SQL語句練習
建立一張表,記錄 呼叫員的工作流水,記錄呼叫員編號,對方號碼,通話開始時間,結束時間。建表,插資料等都自己寫出sql 要求 輸出所有資料中通話時間最長的5條記錄。輸出所有資料中撥打長途號碼 對方號碼以0開頭 的總時長 輸出本月通話時長最多的前三個呼叫員的編號 輸出本月撥打 次數最多的前三個呼叫員的編...
SQL 語句練習
mysql select from persons limit 5 oracle select from persons where rownum 5 select from persons where name like l select from persons where name not l...