位置: 编程技术 - 正文

mysql中count(), group by, order by使用详解

编辑:rootadmin

推荐整理分享mysql中count(), group by, order by使用详解,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

最近做IM的时候遇到一个问题,同时用到了这三个关键字。就是查询一个人的离线消息详情,我们服务端返回给客户端显示的这个详情包括了三个内容,第一个要求列出离线这段时间哪些人或者群给你发了消息,第二个这其中的某个人或者群发了多少条离线消息,第三个拿出最新的一条显示出来。很明显,group by分组哪些人或者群给你发了离线消息,count()得到离线消息数量,order by时间来排序拿出最新的消息。

select count(1) as cnt, msg_data from t_im_chat_offline_msg where to_company_id = &#; and to_user_id = &#; order by create_time desc group by from_company_id, from_user_id;

然后果不其然group by和order by一起检索就报错了,我们可以用嵌套子查询。

mysql中count(), group by, order by使用详解

select count(1) as cnt, msg_data from (select * from t_im_chat_offline_msg where to_company_id = &#; and to_user_id = &#; order by create_time desc) as temp_table group by from_company_id, from_user_id;

我们可以对已经排序的结果集,再来分组并计算数量。这里还有一个暗坑,我自己不小心给躲过去了,其实count()会造成order by排序无效,举个例子:

select count(1) as cnt, msg_data from t_im_chat_offline_msg where to_company_id = &#; and to_user_id = &#; order by create_time desc;

这个语句最后得到的一条记录,其中的msg_data其实是根本没有排序的结果,也就是数据库原顺序,应该是先插入的一条消息,就是说时间旧的消息。为了避免这个问题,所以嵌套子查询在这里先排序,再让它去count()就规避了。自己无意躲过去了,还好反复改语句测试了一番才发现。

Linux下安装配置MySQL 系统:Ubuntu.LTS1官网下载mysql-5.7.-linux-glibc2.5-x_.tar.gz2建立工作组:$su#groupaddmysql#useradd-r-gmysqlmysql3创建目录#mkdir/usr/local/mysql#mkdir/usr/local/mysql/data4

mysql中索引与FROM_UNIXTIME的问题 零、背景这周四收到很多告警,找DBA看了看,发现有个慢查询。简单收集一些信息后,发现这个慢查询问题隐藏的很深,问了好多人包括DBA都不知道原

mysql中mydumper 和 mysqldump 对比使用 如果只是备份几张表或单个库,相比innobackup而言,mysqldump和mydumper更为方便,不过mydumper增加了相对较多的特性,比如多线程备份,正则匹配备份,分组和自检等

标签: mysql中count(), group by, order by使用详解

本文链接地址:https://www.jiuchutong.com/biancheng/349377.html 转载请保留说明!

上一篇:MySQL存储全角字符和半角字符的区别(mysql存文章的字段设置为多大?)

下一篇:Linux下安装配置MySQL(linux的安装)

  • 要交多少增值税
  • 增值税发票是什么纸张型号
  • 超过库存现金限额的现金要及时存入银行
  • 公司的个人所得税是多少
  • 运输途中的不合理损耗有哪些
  • 单位全额承担社保相当于领生活费了吗
  • 工程公司的材料员在哪里考试
  • 网上银行回单是什么意思
  • 收到赔偿款怎么做分录
  • 企业捐赠扣除标准,超出部分
  • 保险赔款个人所得税计算
  • 员工借款会计分录
  • 资金账簿印花税减半征收是从什么时候开始的
  • 房地产开发企业会计科目
  • 国有资产无偿划转管理办法
  • 小规模纳税人普票超过30万怎么交税
  • 国家知识产权局商标注册
  • 普通发票冲红的限制几张以上
  • 技术开发费税率13还是60
  • 怎样算纳税人
  • 房产税实施城市
  • 某企业2016年年末经营资产总额为4000万元
  • 旅游业开办费
  • 房产税发票可以抵扣吗
  • 费用转入本年利润的哪一方
  • 事业单位财政拨款是什么意思
  • 委托贷款利息收入怎么开发票
  • 会计基础工作是会计工作的基本环节
  • php使用composer
  • win10怎么显示隐藏的硬盘
  • encodetext
  • PHP:oci_field_is_null()的用法_Oracle函数
  • php r
  • 外商投资企业有哪些出资方式
  • php编程中的_横线表示什么
  • framework7教程
  • 什么是民办非企业属于民营经济吗
  • 待处理财产损益会计分录
  • sql实现mysql的分页功能
  • 增值税减免附加税怎么处理
  • html的表单怎么做
  • 中兴网管操作手册
  • pytorch教程
  • 猿起信息科技有限公司官网
  • 留抵税额一般记哪个科目
  • 计提支付公积金
  • 上级拔入资金
  • 如何用python绘制
  • 装修费还没摊销怎么办
  • 技术转让费如何收取合理
  • 未使用固定资产有哪些
  • 购买生产原料的支出
  • 退回增值税发票怎么做处理
  • 暂估成本的两种形式
  • 使用 GUID 值来作为数据库行标识讲解
  • sp_executesql 使用复杂的Unicode 表达式错误的解决方法
  • centos bz
  • xp如何查看系统位数
  • macbookpro 钥匙串
  • linux如何查询
  • redhat系列
  • centos和rhel
  • windows桌面卡
  • ExtJs 3.1 XmlTreeLoader Example Error
  • android@localhost#1
  • 解决Android Studio下载gradle慢
  • surf apk android
  • perl -pi
  • 在javascript中关于alert confirm
  • node.js ejs
  • unity ugui教程
  • 广东国家税务局电子税务局官网入口
  • 开票员怎么登录电子税务局进行开票验证
  • 北京24小时税务自助机
  • 四川省国家税务局官网
  • 运输装卸费属于增值税价外费用吗
  • 陕西省税务局袁小平简介
  • 地税局一般几点下班
  • 法制观念的问题
  • 四川残疾人社保补贴
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设