北京SEO

解决mysql group by不能排序方法

2019/10/10/17:34:42  阅读:2307  来源:谷歌SEO算法  标签: Dropbox

我们在学习时老师就讲mysql 的group by 没有排序的功能的并且不能与order by 同时使用,那么如果我非要排序怎么办呢,下面我来给大家介绍解决mysql group by不能排序这个问题.

常用的方法,代码如下:

select * from table group by column_name order by id desc

是不能得到每个分组里面的id的最大的值的.

解决方法,有人写出下面的语句:

SELECT *,max(dateline) as max_line FROM posts GROUP BY tid ORDER BY dateline DESC LIMIT 10

这条语句的没错是选出了最大发布时间,但是你可以对比一下 dateline 和 max_dateline 并不相等,可能有相当的情况,就是分组的目标记录只有一条的时候.

正确的办法是,代码如下:

  1. SELECT*,max(dateline)asmax_lineFROMpostsGROUPBYtidHAVINGdateline=max(dateline)ORDERBY
  2. --phpfensi.com
  3. datelineDESCLIMIT10
  4. --或
  5. select*from(select*fromtableorderbyiddesc)tgroupbycolumn_nameorderbyiddesc

这样就会得到每个分组里面最大的id值了,并且最后的 order by id desc 是再对这些得到的id的值进行排序.

广告内容

解决mysql group by不能排序方法 解决mysql group by不能排序方法 解决mysql group by不能排序方法

相关阅读

热门评论

互联网十八般武艺 互联网十八般武艺

互联网十八般武艺

总篇数179

精选文章

RMAN中catalog和nocatalog区别介绍 小技巧:为Linux下的文件分配多个权限 zimbra8.5.1安装第三方签名ssl证书的步骤 解决mysql不能远程连接数据库方法 windows服务器mysql增量备份批处理数据库 mysql中slow query log慢日志查询分析 JavaScript跨域问题总结 Linux下负载均衡软件LVS配置(VS/DR)教程 mysql中权限参数说明 MYSQL(错误1053)无法正常启动

SEO最新算法