5
我有以下SQL語句:SQL計數where子句
SELECT [l.LeagueId] AS LeagueId, [l.LeagueName] AS NAME, [lp.PositionId]
FROM (Leagues l INNER JOIN
Lineups lp ON l.LeagueId = lp.LeagueId)
WHERE (lp.PositionId = 1) OR
(lp.PositionId = 3) OR
(lp.PositionId = 2)
我真正需要的是讓行,其中位置的數量比數。類似於:
SELECT [l.LeagueId] AS LeagueId, [l.LeagueName] AS NAME, [lp.PositionId]
FROM (Leagues l INNER JOIN
Lineups lp ON l.LeagueId = lp.LeagueId)
WHERE Count(lp.PositionId = 1) > 2 OR
Count(lp.PositionId = 3) > 6 OR
Count(lp.PositionId = 2) > 3
有什麼辦法可以在SQL中做到這一點?
所以,我用下面凱德魯的解決方案,但沒有人知道爲什麼,當我將HAVING從OR語句更改爲AND語句,我得到零結果?如果我只使用一個SUM(CASE ..)語句,我會得到結果,但是如果將兩個有效的語句組合在一起,我會得到零結果。 – 2010-08-09 15:14:48