有一件事我坚持了下来。我在我的数据库中有一个表格,如:
id | AuthorId | Book
---------------------
1 | 2 | book name
2 | 2 | book name
3 | 2 | book name
4 | 2 | book name
5 | 5 | book name
6 | 5 | book name
7 | 8 | book name
8 | 9 | book name
9 | 9 | book name
10 | 6 | book name
如您所见,作者ID“2”重复此表中的最高次数(4次),而作者作者ID出现少于4次。如何使用php MySQLi从此表中获取ID“2”,这是此数据中最常出现的值?我不知道我怎么能这样做。
非常感谢你。
答案 0 :(得分:2)
尝试以下查询。您计算按AuthorID DESC分组的行,并将结果限制为最高值。
SELECT AuthorId, COUNT(AuthorId) as c from table
GROUP BY AuthorId
ORDER BY COUNT(AuthorId) DESC
LIMIT 1;
答案 1 :(得分:1)
试试这个
select AuthorId , count(AuthorId ) as max
from table_name
group by AuthorId order by max desc limit 1;
order by max desc
用于排序第一行的最大值。 limit 1
仅来自第一行