mysql计数没有使用

时间:2014-08-12 03:31:15

标签: mysql

所以我要求尝试转换这句话:

    SELECT        C.cid, C.cname
    FROM           Customer C, Buys B
    WHERE        C.cid = B.cid
    GROUP BY  C.cid
    HAVING       count(pid) > 100

同样但不使用HAVING子句。我在过去一小时左右的时间里一直想弄清楚,但我不确定如何正确地做到这一点。我一直试图弄清楚如何正确使用WHERE子句。您只能使用HAVING子句正确使用聚合函数吗?

这就是表格的样子

Product(pid, name, price, mfgr)
Buys(cid, pid)
Customer(cid, cname, age)

1 个答案:

答案 0 :(得分:1)

在评论中简单引用@zfus回答,只是这个问题似乎在列表中有一个答案,以避免进一步的流量。

SELECT cid, cname 
FROM (
    SELECT cid, cname, count(*) AS counter 
    FROM customer c 
    INNER JOIN buys b on (c.cid=b.cid) 
    GROUP BY cid, cname
) AS result 
WHERE counter > 100