茫茫網海中的冷日 - 對這文章發表回應
茫茫網海中的冷日
         
茫茫網海中的冷日
發生過的事,不可能遺忘,只是想不起來而已!
 恭喜您是本站第 1672191 位訪客!  登入  | 註冊
主選單

Google 自訂搜尋

Goole 廣告

隨機相片
PIMG_00247.jpg

授權條款

使用者登入
使用者名稱:

密碼:


忘了密碼?

現在就註冊!

對這文章發表回應

發表限制: 非會員 可以發表

發表者: 冷日 發表時間: 2012/11/13 7:40:34
之前我遇到問題,有兩個表格 a 跟 b,分別利用 id 當作連接,當你使用 where a.id = b.id 的時候,當 b 資料表沒有對應到的時候,撈出來的資料就會少一筆,問題如下

: 想請教各位大大,
: 如果我現在有兩個table t1,t2
: Table t1:
: uid INT
: name NCHAR(10)
: Table t2:
: uid INT
: t1_id INT 參考到t1.uid
: 我下一個SQL query:
: SELECT t1.name, COUNT(t2.uid)
: FROM t1,t2
: WHERE t2.t1_id=t1.uid
: GROUP BY t1.name
: 這樣會計算出每個t1.name項目在t2中所出現的次數。
: 但是如果次數為零時就不會顯示出來。
: 想請教大家,怎樣修改可以讓次數為零的t1.name也顯示出來呢?

解決方法:就是利用 outer join
$sql = "SELECT t1.t_name, count(t2.uid) as aa 
FROM " . $xoopsDB->prefix('teacher') . " as t1 
LEFT OUTER JOIN " . $xoopsDB->prefix('student') . " as t2 
on t1.tid = t2.st_teacher 
group by t1.t_name";




原文出處:[MySQL] outer join 使用 | 小惡魔 - 電腦技術 - 工作筆記 - AppleBOY
內容圖示
url email imgsrc image code quote
樣本
bold italic underline linethrough   












 [詳情...]
validation picture

注意事項:
預覽不需輸入認證碼,僅真正發送文章時才會檢查驗證碼。
認證碼有效期10分鐘,若輸入資料超過10分鐘,請您備份內容後,重新整理本頁並貼回您的內容,再輸入驗證碼送出。

選項

Powered by XOOPS 2.0 © 2001-2008 The XOOPS Project|