我想检索“金额”大于或等于1500的所有记录。问题是即使“金额”小于1500,它也会显示在页面中。
customers table
id name
1 sample
2 sample2
3 sample3
payments table
p_id amount id(foreign key)
1 800 2
2 800 2
3 1500 1
4 1200 3
应检索客户1和2,因为金额> = 1500。
谢谢你, 米克:)
答案 0 :(得分:3)
这需要加入表格。使用GROUP BY
,因为其中一列使用SUM()
进行聚合,HAVING
子句用于过滤聚合结果。
SELECT a.ID, a.name
FROM customers a
INNER JOIN payments b
ON a.ID = b.id
GROUP BY a.ID, a.name
HAVING SUM(b.amount) >= 1500