博客
关于我
mySQL 多个表求多个count
阅读量:797 次
发布时间:2023-02-10

本文共 733 字,大约阅读时间需要 2 分钟。

数据库管理是一个技术工作者常需要面对的挑战,今天我遇到了一个有趣的问题:如何通过单一的SQL语句,从多个表中同时获取多个计数结果。经过思考,我决定使用MySQL中的UNION ALL功能来实现这一目标。

具体来说,我需要从四个不同的表中统计满足特定条件的记录数量。以下是实现的SQL语句:

SELECT COUNT(*) FROM tj_active_person WHERE researcher_id='35' AND is_delete=0UNION ALLSELECT COUNT(*) FROM tj_active_person WHERE researcher_id='35' AND sign_status=1 AND is_delete=0UNION ALLSELECT COUNT(*) FROM tj_report WHERE researcher_id='35' AND is_delete=0UNION ALLSELECT COUNT(*) FROM tj_registration WHERE invitation_code IN(    SELECT inviter_code FROM tj_registration WHERE id='35' AND is_delete=0)

这个语句通过UNION ALL将四个独立的SELECT子句合并在一起,返回了四个计数结果。UNION ALL的优势在于它不会消耗额外的CPU资源来去除重复的记录,因此在处理大量数据时表现尤为出色。

通过这种方式,我能够在一个简单的SQL语句中完成多个表的数据统计任务,大大简化了数据库管理的复杂性。MySQL的强大功能和简洁语法使得这样的优化变得轻松易行。

转载地址:http://ykbfk.baihongyu.com/

你可能感兴趣的文章
Mysql 学习总结(88)—— Mysql 官方为什么不推荐用雪花 id 和 uuid 做 MySQL 主键
查看>>
Mysql 学习总结(89)—— Mysql 库表容量统计
查看>>
mysql 实现主从复制/主从同步
查看>>
mysql 审核_审核MySQL数据库上的登录
查看>>
mysql 导入 sql 文件时 ERROR 1046 (3D000) no database selected 错误的解决
查看>>
mysql 导入导出大文件
查看>>
mysql 将null转代为0
查看>>
mysql 常用
查看>>
MySQL 常用列类型
查看>>
mysql 常用命令
查看>>
Mysql 常见ALTER TABLE操作
查看>>
MySQL 常见的 9 种优化方法
查看>>
MySQL 常见的开放性问题
查看>>
Mysql 常见错误
查看>>
MYSQL 幻读(Phantom Problem)不可重复读
查看>>
mysql 往字段后面加字符串
查看>>
mysql 快速自增假数据, 新增假数据,mysql自增假数据
查看>>
Mysql 报错 Field 'id' doesn't have a default value
查看>>
MySQL 报错:Duplicate entry 'xxx' for key 'UNIQ_XXXX'
查看>>
Mysql 拼接多个字段作为查询条件查询方法
查看>>