下面的查詢是針對數據庫的模式:http://i.stack.imgur.com/omX60.png幫助構建給出模式
的問題是:有多少人有至少五個еntitlements?
我這有,請告訴我這是多麼錯誤並修復它。
select count(personId)
from serialNumber_tbl natural join entitlement_tbl
group by personId
having sum(entitlementID) > 5
謝謝。
下面的查詢是針對數據庫的模式:http://i.stack.imgur.com/omX60.png幫助構建給出模式
的問題是:有多少人有至少五個еntitlements?
我這有,請告訴我這是多麼錯誤並修復它。
select count(personId)
from serialNumber_tbl natural join entitlement_tbl
group by personId
having sum(entitlementID) > 5
謝謝。
至少5的條件是>= 5
,不> 5
您需要在授權表來算的獨特標識,沒有人
這給你的人,然後你需要子查詢它找到的計數人。
select count(personId)
FROM
(
select personId
from serialNumber_tbl natural join entitlement_tbl
group by personId
having count(distinct entitlement_id) >= 5
) X
您的請求並不完全清楚。你要求的人有五個以上權利行計數是否在多個序列號存在與否?如果是這樣,你可以這樣做:
Select Count(*) As CountOfPeople
From Person_tbl As P
Where Exists (
Select 1
From serialNumbers As S1
Join entitlement_tbl As E1
On E1.serialNumberId = S.serialNumberId
Where S1.personId = P.personId
Having Count(*) >= 5
)
或者是你要求找到那個有五個以上資格的SERIALNUMBER多少人?如果是這種情況,那麼你可以這樣做:
Select Count(*) As CountOfPeople
From Person_tbl As P
Where Exists (
Select 1
From serialNumbers As S1
Join entitlement_tbl As E1
On E1.serialNumberId = S.serialNumberId
Where S1.personId = P.personId
Having Count(Distinct S1.serialNumberId) >= 5
)
謝謝,這就是我需要的! – Donut 2011-04-13 04:12:38