我有帖子表,我想首先显示最常查看的帖子,但如果两列或多列具有相同的值,则无法获得正确的结果。我的意思是,如果一个帖子有25个视图,第二个有相同的(25)个视图,那么我只得到一个结果,但我想显示所有结果。请帮帮我..
这是我的代码:
$real_query = mysqli_query(
$connect,
"SELECT id, note_topic, note_owner_id, note_by_name,
views FROM user_note GROUP BY views ORDER BY MAX(views) DESC"
);
答案 0 :(得分:1)
只需按视图删除分组:
GROUP BY views
还从ORDER BY子句中删除聚合:
ORDER BY MAX(views) DESC
到
ORDER BY views DESC
答案 1 :(得分:1)
我认为您正在寻找像这样的查询:
select
id, note_topic, note_owner_id, note_by_name, views
from
user_note
where
views = (select MAX(views) from user_note)
如果只有一个最大帖子,则此查询将返回1行,否则将返回具有最大视图数的所有行。
答案 2 :(得分:0)
这将按照后代顺序显示按视图数量排序的前十个记录 包括具有相同顶视图数量的记录
SELECT
id, note_topic, note_owner_id, note_by_name, views
FROM
user_note
ORDER BY views DESC
LIMIT 10