2012-04-30 97 views
1

我有兩個表,我想從兩個表中計數。從第一個表格計數然後從第二個表格計數,結果應該是這樣的。來自多個表的多個計數

Count(users.name) Count(users_types) 
     5     8 

但我的查詢帶來這樣的結果

Count(users.name) Count(users_types) 
     8     8 

這裏是我的查詢

select count(users.users), 
count(users_types.users_types) 
form users , users_types 

我怎樣才能得到正確的結果呢?

回答

0

使用子查詢這樣

select 
    count(users.users) Users, 
    (select 
    count(users_types.users_types) 
    from teams) UsersTypes 
from users 
1

嘗試:


select 
(select count(users.users) from users), 
(select count(users_types.users_types) form users_types) 
+0

這工作得很好,但減慢顯著當表中包含大量數據的查詢。原來的問題似乎希望在沒有速度問題的情況下完成。 – Nightwolf

+0

好吧,在這個問題中沒有提到這個問題..! –

+0

答案沒有錯,但爲什麼不添加允許更快結果的備選答案。 – Nightwolf

1
select (select count(*) cnt1 from table1), 
(select count(*) cnt2 from table2)