在这种情况下,我需要从DB table中选择row,这取决于列中的值。

Project    Version     Status

MSS           3         active
MSS           2         active
MSS           1         complete
RIL           3         active
RIL           2         active
RIL           1         active
DT            2         complete
DT            1         complete

只有当一个项目的所有版本都完成时,它才被认为是完整的。这意味着当状态列在表的项目列中的同一项目的所有出现项中都具有“complete”时。
如何才能只选择那些已完成的项目?

最佳答案

select project
from MyTable
group by project
having count(*) = sum(case when status = 'complete' then 1 else 0 end)

关于mysql - SQL:在特定字段中选择与某些条件匹配的行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15234292/

10-13 00:59