2012-08-13 74 views

回答

0

你想加入的表一起使用COUNT()GROUP BY

SELECT 
    a.id, a.name, COUNT(*) AS num_reservations 
FROM 
    availables a 
    LEFT JOIN reservations r 
     ON r.available_id = a.id 
GROUP BY 
    a.id 

這應該給你每個房間的名單總麻木呃每個人都有保留。

把它放到你的現有查詢,則可以使用以下命令:

$coordinator = (isset($_GET['uidse']) && is_numeric($_GET['uidse'])) ? (int)$_GET['uidse'] : 0; 
$result = mysql_query("SELECT *, COUNT(*) AS num_reservations FROM availables LEFT JOIN reservations ON availables.id=reservations.available_id WHERE coordinator='" . $coordinator . "' GROUP BY availables.id"); 

我把MySQL查詢的$coordinator之外,並追加非常基本的驗證/消毒,以節省您從SQL注入頭痛未來。

+0

我想獲得特定協調員的可用數量和儲備數量,因爲這是爲他們的儀表板例如。 WHERE coordinator = 4 – user1596253 2012-08-13 19:45:50

+0

@ user1596253我的第二個查詢,顯示如何使用* your * code實現它的那個查詢顯示瞭如何做到這一點,不是嗎? – newfurniturey 2012-08-13 19:49:02

+0

是的第二個查詢很好! – user1596253 2012-08-13 19:56:50

0
SELECT availables.name, COUNT(*) FROM availables 
LEFT JOIN reservations ON reservations.available_id = availables.id 
GROUP BY reservations.available_id 
+0

應該有多個協調員,..如何獲得一個特定的協調員..例如。 WHERE協調員= 4 – user1596253 2012-08-13 19:44:08

相關問題