1

我想检索“金额”大于或等于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。

谢谢你,米克:)

4

1 回答 1

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
于 2013-03-01T00:32:59.633 回答