我有 2 个表,如下
销售额(表1):
sales_id, userid(buyerid), product id, productname, orderid, status
用户(表2):
userid, username, pass
现在,我需要显示在我的购物网站上经常购买的顶级客户。
我怎样才能实现这个目标?
我尝试过
SELECT A.(*), B.username
FROM sales A, users B
WHERE A.userid=B.userid AND A.status='delivered' LIMIT 10;
而且,只有当最低购买次数超过 10 或 15 次时,我才需要显示记录。
现在,同样的内容必须循环并显示为带有用户名的前 10 位买家,也需要知道如何循环
需要帮助,谢谢
最佳答案
连接两个表,按userid
对它们进行分组并计算记录数。尝试这样的事情,
SELECT a.userID, a.`username`, COUNT(*) totalCount
FROM users a
INNER JOIN sales b
ON a.userid = b.userid
WHERE b.`status` = 'delivered'
GROUP BY a.userID
ORDER BY totalCount DESC
LIMIT 10
关于php - 从我的数据库中选择顶级客户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12509234/