2013-07-12 51 views
0

我不確定在這裏嘗試做什麼是可能或最佳方法,但我想避免多個查詢來實現簡單的結果集。對其他查詢有多重計數的結果

我的應用程序允許一些管理員和用戶在他們的賬戶上。我想返回一個基於其帳戶類型的結果集,可以返回管理員和用戶的數量(這是表中的固定值),但也返回已分配的管理員/用戶的數量。

最好地說明這裏有一個例子(我知道不工作,但應該給的什麼,我試圖做一個指示:

SELECT 
     `admins`, 
     `users`, 
     COUNT(SELECT id FROM `account_admins` WHERE `account_id`=?) AS `current_admins`, 
     COUNT(SELECT id FROM `account_users` WHERE `acount_id`=?) AS `current_users` 
FROM .... 

我不知道,如果以上是可能的,如果它是有效的?我已經被告知,我可以使用加入,但我不完全知道如何去了解它esspecially多COUNT()請求。

預先感謝您:)

回答

0

你的子查詢方法是almot正確的。你想把count()放在子查詢中:

SELECT 
     `admins`, 
     `users`, 
     (SELECT count(id) FROM `account_admins` WHERE `account_id`=?) AS `current_admins`, 
     (SELECT count(id) FROM `account_users` WHERE `acount_id`=?) AS `current_users` 
FROM .... 
相關問題