我有一个“ transaction_status”表:

id  transaction_id  status
1         12           0
2         13           0
3         12          -1
4         14           0
5         13          -1
6         15           0
[END OF TABLE]


我需要获取仅具有status = 0记录的交易ID。

例如,这就是我从上表中查找的内容:

id   transaction_id   status
4          14            0
6          15            0


到目前为止,我正在尝试:

SELECT id, transaction_id, status
FROM transaction_status
WHERE status = 0 OR status = -1
ORDER BY status ASC
GROUP BY txn_id
HAVING status = 0


但是没有运气。我的想法不多了。有什么想法吗?谢谢!

最佳答案

对hading子句进行了小的更改。

SELECT id, transaction_id, status
FROM transaction_status
WHERE status = 0 OR status = -1
GROUP BY transaction_id
HAVING min(status) = 0


编辑:也删除了顺序,因为它没有任何意义

10-07 12:36
查看更多