Php mysql中每行最多重复列数
假设我有一张a桌Php mysql中每行最多重复列数,php,mysql,Php,Mysql,假设我有一张a桌 A user count a 4 b 1 c 3 d 2 我想写一个查询,返回a的每个值以及count的最大值,类似于 user maxCount a 4 b 4 c 4 d 4 我试图实现这一目标的方式是 select user,max(count) as maxCount from A 我得到的结果是: user maxCou
A
user count
a 4
b 1
c 3
d 2
我想写一个查询,返回a的每个值以及count的最大值,类似于
user maxCount
a 4
b 4
c 4
d 4
我试图实现这一目标的方式是
select user,max(count) as maxCount from A
我得到的结果是:
user maxCount
a 4
这显然不是我想要的
我知道我可以编写多个查询(即“从A中选择用户”/“从A中选择最大值(计数)),因为这可能看起来是多余的
但我认为这样做对我来说是最好的,因为我不想多次调用mysql,而且我将返回的数据作为一个jsonObj推送到前端,因此创建一个表,然后将两个返回的表组合成一个表,比转换成json要容易得多。尝试以下方法:
select user,max(count) as maxCount from yourTable group by user
这将获得最大计数,并根据用户列中的任何唯一值对其进行分组。此查询将为您提供所有行的最大值:
SELECT user,
(SELECT MAX(count) FROM yourTable) AS maxCount
FROM yourTable;
也许是
分组依据
子句?使用聚合函数而不使用聚合函数通常不是您最终不得不编写查询的方式。这似乎是多余的
-每行都有相同的值是多余的不能使用group by,因为我的实际列都不是唯一的,上面只是一个简化的例子,只有在用户是唯一的情况下,这才起作用,但在我的情况下,这不是子查询在每一行上运行吗?