位置: 编程技术 - 正文

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的安装)

  • 小规模纳税人销售额超过500万
  • 金融资产交易增值税
  • 计税基础怎么算
  • 什么是试算平衡?如何进行试算平衡
  • 不开票收入要交所得税吗
  • 珠宝首饰可以开发票吗
  • 原始凭证如何粘贴到记账凭证后面
  • 软件公司企业成本预测
  • 社保补贴有几年
  • 进料加工企业的增值税如何处理
  • 购买的固定资产可以一次计入管理费用吗
  • 个人房屋租赁税率2023年
  • 待认证进项税额借贷方向
  • 企业上市过程中遇到的困难
  • 写支票人民币大写有角需要写整吗
  • 未开票的销售要交增值税吗
  • 农民工工资怎么交个人所得税
  • 专用发票右上角的数字表示什么
  • 以前年度未申报的专项附加扣除
  • 失控发票补完税还追究吗
  • 其他应收款社保个人部分分录
  • 或有事项确认资金怎么填
  • 公司用库存商品怎么做账
  • 坏账准备转回影响应交所得税吗
  • 专项附加扣除如何自行申报
  • 怎么注销win10系统
  • 经营租赁是什么意思
  • macbook panic cpu caller
  • 长期待摊费用的概念
  • 资产减值损失的科目编码
  • 月底增值税怎么计提
  • 转让二手设备如何交易
  • 公账提取备用金限额
  • 所得税和所得税税率
  • 收到业绩补偿会扣税吗
  • 合伙人资本属于股东吗
  • php获取ipv6地址
  • vue项目引入ts
  • 员工保险个人部分交多少
  • css 自定义变量
  • roc曲线绘制r语言
  • 基于SadTalker的AI主播,Stable Diffusion也可用
  • 微信php源码
  • php md5 16位
  • merge命令合并不了数据
  • php windows
  • redis incr 高并发
  • 报税财务报表一定要填吗
  • 简易计税是否可以享受即征即退
  • dedecms配置
  • 苗木免税只能开普票
  • sql server 2008简介
  • mysql 索引 key
  • 房东房租不开票违法吗
  • 成本类科目会结转到损益类科目吗?
  • 原材料计入什么摘要
  • 小规模纳税人报哪些税
  • 物业公司水费差额征税如何申报
  • 印花税的通俗理解
  • 金融资产发生的负债包括
  • 税控盘的主要功能
  • 设备上的配件计入什么费用
  • 待摊费用和预提费用的区别
  • 购买土地会计分录及摊销分录
  • win10病毒与防护
  • linux 配置中文
  • svaplayer.exe - svaplayer是什么进程 有何作用
  • win8操作系统安装
  • windows10周年更新
  • 开启win10
  • win10开机蓝屏提示修复
  • 如何使用jquery插件
  • linux中的shell命令
  • C# list多字段排序sort
  • 如何获取医院电子发票
  • Python制作钟表代码
  • 河北农信登录密码错误
  • 留抵税款
  • 税务数据清理变态
  • 业务招待费进项可以抵扣吗为什么
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设