我有一个包含客户信息的数据库。在表中,我有:
“全名”“电子邮件”等
有些客户和我下了超过 1 个订单,所以每个订单都有一行,而且每个订单显然也有重复的名称。
例如,我怎样才能获得超过 5 个订单的客户的 mySQL 记录?
这样它只会显示 mySQL 记录,例如“Michael Dell”的“全名”显示在 >5 行中?
我有一个包含客户信息的数据库。在表中,我有:
“全名”“电子邮件”等
有些客户和我下了超过 1 个订单,所以每个订单都有一行,而且每个订单显然也有重复的名称。
例如,我怎样才能获得超过 5 个订单的客户的 mySQL 记录?
这样它只会显示 mySQL 记录,例如“Michael Dell”的“全名”显示在 >5 行中?
像这样的东西应该可以解决问题吗?
SELECT `fullname`, COUNT(*) AS `count` FROM tablename WHERE `count` > 5 GROUP BY `fullname`
或者
SELECT `fullname`, COUNT(*) AS `count` FROM tablename GROUP BY `fullname` HAVING count(*) > 1
没有你的模式的细节很难,但这是基本的想法。
select fullname from order group by fullname having count(*) > 5
试试这个
SELECT `fullname`, COUNT(fullname) AS `count` FROM tablename WHERE `count` > 5 GROUP BY GROUP BY `fullname`