我最後的任務太模糊了,所以我會修改它。我知道以下是不正確的SQL語法,但是您應該能夠獲得我嘗試執行的查詢的要點。計數子查詢
select id,
title,
count(select x
from otherTable
where otherTable.id = thisTable.id) as new_row
from thisTable
我希望這個更好解釋一下。
我最後的任務太模糊了,所以我會修改它。我知道以下是不正確的SQL語法,但是您應該能夠獲得我嘗試執行的查詢的要點。計數子查詢
select id,
title,
count(select x
from otherTable
where otherTable.id = thisTable.id) as new_row
from thisTable
我希望這個更好解釋一下。
select tt.id, tt.title, count(ot.id) as count
from thisTable tt
inner join otherTable ot on ot.id = tt.id
group by tt.id, tt.title
比冒犯更容易解決。 – 2010-09-09 02:53:40
@Evan Carroll:Zee括號,zay do nuTH! :) +1 – 2010-09-09 02:59:43
嘿傢伙,我仍然可以觸摸我自己的答案? )) – 2010-09-09 03:27:01
另一種解決方案。如果你想知道行數,而不是不同x值的數量,那麼使用count(*)而不是count(distinct x)。
select id, title,
(select count(distinct x) from otherTable
where otherTable.id = thisTable.id) as new_row
from thisTable
@Camony:如果在外表中沒有匹配的行,那麼你是否仍然想顯示0作爲計數?在這種情況下,內部連接不會工作,我認爲... – 2010-09-09 03:55:15