線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1071
推到 Plurk!
推到 Facebook!

中文解釋SQL

尚未結案
isthatu
初階會員


發表:80
回覆:47
積分:25
註冊:2002-06-26

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-09-19 19:33:37 IP:61.219.xxx.xxx 未訂閱
請問 SELECT A.* FROM A LEFT JOIN B ON A.ID=B.ID AND b.ID='123' SELECT A.* FROM A LEFT JOIN B ON A.ID=Bb.ID where b.ID='123' 這兩個不同處如何用中文解釋阿 會用可是很難翻成中文 BCDEFHIJKLMNOPQRSTUVWXZ
------
BCDEFHIJKLMNOPQRSTUVWXZ
Miles
尊榮會員


發表:27
回覆:662
積分:622
註冊:2002-07-12

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-09-19 20:26:42 IP:218.160.xxx.xxx 未訂閱
Hello : SELECT A.* FROM A LEFT JOIN B ON A.ID=B.ID AND b.ID='123' 只要A表格ID有資料, 不管b.ID是否有資料對應都會有結果出來 SELECT A.* FROM A LEFT JOIN B ON A.ID=Bb.ID where b.ID='123' A表格ID有資料, 且b.ID要等於'123'才會有結果出來, 所以只會顯示A.ID='123'的資料 我不是高手, 高手是正在銀幕前微笑的人.
------


我不是高手, 高手是正在銀幕前微笑的人.
isthatu
初階會員


發表:80
回覆:47
積分:25
註冊:2002-06-26

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-09-19 22:04:20 IP:61.219.xxx.xxx 未訂閱
引言: Hello : SELECT A.* FROM A LEFT JOIN B ON A.ID=B.ID AND b.ID='123' 只要A表格ID有資料, 不管b.ID是否有資料對應都會有結果出來 SORRY 題目應該是這樣 SELECT A.*,B.* FROM A LEFT JOIN B ON A.ID=B.ID AND b.ID='123' 必須呈現A表ID所有資料比數 兩表未對應處 則B表欄位以空值呈現 且B表欄位只呈現B.ID等於123的欄位 其餘不呈現 真咬文爵字 這樣不曉得對不對 SELECT A.* FROM A LEFT JOIN B ON A.ID=Bb.ID where b.ID='123' A表格ID有資料, 且b.ID要等於'123'才會有結果出來, 所以只會顯示A.ID='123'的資料 SELECT A.*,B.* FROM A LEFT JOIN B ON A.ID=Bb.ID where b.ID='123' 這個跟select A.*,B.* from A,B where a.id=b.id and b.id='123' 好樣一樣 找出A.ID等於123的A表資料 我不是高手, 高手是正在銀幕前微笑的人.
BCDEFHIJKLMNOPQRSTUVWXZ
------
BCDEFHIJKLMNOPQRSTUVWXZ
cashxin2002
版主


發表:231
回覆:2555
積分:1937
註冊:2003-03-28

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-09-19 22:32:01 IP:63.84.xxx.xxx 未訂閱
您好.    SELECT A.*,B.* FROM A LEFT JOIN B ON A.ID=B.ID AND b.ID='123' A表和B表做合并處理, 合并比對條件為A表和B表的ID欄位值相同或者B表的ID欄位值為'123', 回傳符合合并比對條件的所有資料. SELECT A.*,B.* FROM A LEFT JOIN B ON A.ID=Bb.ID where b.ID='123' A表和B表做合并處理, 合并比對條件為B表的ID欄位值為'123'且A表和B表的ID欄位值相同, 回傳符合合并比對條件的所有資料. 參考看看! ===================== 努力,相信會獲得美麗! 忻晟
------
忻晟
Jeffrey
初階會員


發表:10
回覆:58
積分:38
註冊:2002-04-15

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-09-22 15:14:12 IP:211.74.xxx.xxx 未訂閱
小弟也來解釋看看,不對之處,請大家指教! SELECT A.* FROM A LEFT JOIN B ON A.ID=B.ID AND b.ID='123' SELECT A.* FROM A LEFT JOIN B ON A.ID=Bb.ID where b.ID='123' 不論其序述所得的結果,以語法來說,on 後之條件在於規定A與B資料表(A LEFT JOIN B)建立關聯時的條件,而Where以後是過濾B資料表之條件,但就不知道on與Where那一個條件先處理(如果是這樣的話,相信在"速度"上會有差別),還是資料庫會重新調整"重排",就不知道了。
系統時間:2024-07-01 20:53:47
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!