如何按两列排序MySQL?

jas*_*457 1 php mysql sql sorting

我和一些朋友创建了一个音乐博客,我创建了一个MySQL表来跟踪帖子的观点.我有一列用于跟踪管理员视图,一列用于跟踪每个帖子的用户视图.

我正在制作一个页面,可以通过大多数管理员视图,大多数用户视图和总视图轻松查看和排序.我没有在我的MySQL数据库中为"总视图"创建一个列(要计算,我只是将管理视图添加到用户视图中.简单明了).

我可以通过查询来轻松地按管理员视图排序,SELECT * FROM log ORDER BY ADMIN DESC对于用户视图也是如此,但有一种简单的方法可以做类似的事情SELECT * FROM log ORDER BY ADMIN + USER DESC吗?如果没有,我将不得不乱用我的代码来提供我自己的排序算法.

提前谢谢.

Qua*_*noi 5

查询完全按照您的说法进行:

SELECT  *
FROM    log
ORDER BY
        admin + user DESC
Run Code Online (Sandbox Code Playgroud)

如果为总视图创建了单独的列并将其编入索引,则可以在查询中使用它:

SELECT  *
FROM    log
ORDER BY
        total_views DESC
LIMIT   10
Run Code Online (Sandbox Code Playgroud)

这将提高SELECT有限查询的速度.按照您的方式,即使您只选择前10条评论,也应扫描并订购整个表格.