位置: 编程技术 - 正文

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

  • 增值税专用发票几个点
  • 企业所得税的纳税人发生年度亏损的时间
  • 为什么要交税钱
  • 销售佣金 个税
  • 财务状况说明表财务报表有什么区别
  • 简易计税的增值税要计提附加税吗
  • 抵扣进项税怎么做凭证
  • 一般纳税人销售自己使用过的汽车
  • 收到退税如何记账
  • 新成立的企业都有哪些
  • 企业为什么要进行环境分析
  • 社保利息是什么意思
  • 运输公司赔偿计入什么科目
  • 办理异地租房提取公积金流程
  • 贷款公司收取服务费是诈骗吗
  • 劳务公司购买材料怎么做账
  • 理财产品增值税纳税人
  • 出售自建厂房的税率
  • 工程款填入申报表应税服务还是应税劳务一栏?
  • 固定健身器械使用方法
  • 失业保险退保怎么返
  • 个人买卖黄金如何缴税
  • 行政罚款计入什么会计科目
  • 以前年度损益调整编码
  • 间接生产费用包括
  • 咨询服务用什么科目
  • 待抵扣进项税额是二级还是三级
  • 西方会计要素有哪些
  • 电脑上一键复制是哪个键
  • 重建索引命令
  • 用银行存款支付本季度短期借款利息
  • 辞退员工补偿标准是n+1还是2n
  • 无形资产出租怎么开具发票
  • framework启动
  • php实现登录功能
  • 圣米歇尔山法语介
  • vue路由用法
  • yii框架入门
  • 转账支票购买办公用品一批,共计600元
  • 已开发票作废和空白发票作废有什么不一样?
  • 小企业会计准则会计科目表
  • mysql左连接查询 效率
  • 漏税处罚
  • 银行收到几分钱怎么做账
  • Python IDE之Thonny的介绍
  • 织梦前台的菜单怎么换
  • 附加税申报核心内容
  • 生产车间用电的进项税额可以抵扣吗
  • 汇兑损益一级科目
  • 一般纳税人的建筑企业可以选择简易征收的条件
  • 个人所得税能说明什么
  • 个人独资企业要交哪些税
  • 跨年的应收账款多做了怎么做账
  • 股东以无形资产入股是否需要缴纳个税
  • 补缴以前年度的增值税以及附加税,还有罚款的账务处理
  • 递延资产放在资产负债表哪里
  • 无形资产如何摊销公式
  • 不偿还的其他应收款
  • 差旅费出差补助标准
  • 小规模纳税人公司注册条件
  • 现金日记账谁负责
  • 汇兑损益的账务处
  • 公司向个人借款利息可以税前扣除吗
  • 公司支票可以进私人账户吗有限额吗
  • sql拆分函数
  • mysql8.0优化
  • mysql登陆error2002
  • WINDOWS体验指数5.1
  • win10如何连接远程电脑
  • windows怎样设置
  • win7系统鼠标右键无法弹出菜单
  • win7 mysql
  • LiteSpeed添加虚拟主机+支持htaccess图文教程
  • win10如何不升级系统
  • nodejs worker
  • 国家税务总局安徽省税务局公告
  • 如何查看税务登记记号
  • 印花税当期没有发生可以不用申报吗
  • 银行收取手续费可以抵扣进项税额吗
  • 湖北中税网控股股份有限公司
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设