查询优化 -- UNION 用法

union 不返回重复行(所有字段值相同的行)

union all 返回所有行

// 每类最多统计100条

sql 复制代码
select `server_id`,count(1) as logs from ( SELECT `server_id` FROM `log` WHERE `log`.`type` = "a" AND server_id=1 limit 100 )
UNION
select `server_id`,count(1) as logs from ( SELECT `server_id` FROM `log` WHERE `log`.`type` = "a" AND server_id=2 limit 100 )
UNION
select `server_id`,count(1) as logs from ( SELECT `server_id` FROM `log` WHERE `log`.`type` = "a" AND server_id=3 limit 100 );
sql 复制代码
SELECT * FROM log WHERE type="a"
UNION
SELECT * FROM log WHERE type="b"
UNION
SELECT * FROM log WHERE type="c"
order by id desc LIMIT 10

【高性能mysql】

sql 复制代码
(SELECT * FROM log WHERE type="a" order by id desc LIMIT 10)
UNION ALL
(SELECT * FROM log WHERE type="b" order by id desc LIMIT 10)
UNION ALL
(SELECT * FROM log WHERE type="c" order by id desc LIMIT 10)
order by id desc LIMIT 10
sql 复制代码
select sum(num)
from
(
SELECT count(1) as num FROM log WHERE type="a"
UNION
SELECT count(1) as num FROM log WHERE type="b"
UNION
SELECT count(1) as num FROM log WHERE type="c"
)
相关推荐
xieliyu.9 小时前
MySQL 六大基础约束详解:NOT NULL/DEFAULT/UNIQUE/ 主键 / 外键 / CHECK
android·数据库·sql·mysql
Anokata10 小时前
MYSQL SQL 执行系列1
android·sql·mysql
han_hanker10 小时前
sql语法 MyBatis <foreach> 标签详解
windows·sql·mybatis
迷枫71211 小时前
简单sql与dm功能实验记录
数据库·sql·oracle
zhanghaofaowhrql11 小时前
Spring Data JPA Repository 详解:从基础到高级用法
java·数据库·sql
灯澜忆梦1 天前
【MySQL2】| DML数据操作语言
数据库·sql
麦聪聊数据1 天前
业务自助取数(下):安全可控前提下,实现取数效率百倍提升
数据库·sql
ShiXZ2131 天前
指令集-SQL 常用指令速查手册
数据库·sql·mysql·oracle
Databend1 天前
小 Bitmap,大优化:Databend 如何加速大规模集合聚合
大数据·数据库·sql
婉然从物2 天前
Flink SQL 元数据持久化实战:从“每次重启表消失”到“Hive Metastore 永久存储”
hive·sql·flink