美文网首页
mysql union all 替代 in查询

mysql union all 替代 in查询

作者: 江河湖海琴瑟琵琶 | 来源:发表于2021-03-03 17:48 被阅读0次

mysql有个表比较大900多万行, 占用15G空间,每条记录100多个字段...
现需要进行 IN(5,10)查询, 并且需要对结果倒序,分页操作
即使where查询字段有索引, 运行以下语句耗时10秒


SELECT * FROM `order` 
WHERE `city_id` = 224 
AND `state` in (5,10) 
ORDER BY ctime desc 
LIMIT 0,12

于是按in 条件拆成两个select语句,然后union all ,最后排序分页,耗时0.7秒

SELECT * FROM `order`
WHERE `city_id` = 224 
AND`state` = 5 
UNION ALL
SELECT * FROM `order` 
WHERE `city_id` = 224 
AND `state` = 10 
ORDER BY ctime desc
LIMIT 0,12

相关文章

  • mysql union all 替代 in查询

    mysql有个表比较大900多万行, 占用15G空间,每条记录100多个字段...现需要进行 IN(5,10)查询...

  • mysql不规则排序笔记!

    因为是同张表可以使用union或者union all 来查询,缺点是查询语句比较长 MySQL可以通过field(...

  • mysql 合并结果集

    mysql查询时经常会把多个查询结果集进行合并。主要使用UNION 和 UNION ALL。两者区别如下: 对查询...

  • 数据查询学习记录

    1、msyql中子查询IN,EXISTS,ANY,ALL,SOME,UNION介绍 2、mysql having的...

  • SQL [UNION]和[UNION ALL]用法

    原文链接:SQL UNION和UNION ALL用法 一、概述 union和union all都用于合并多个查询,...

  • MySql-多表查询

    多表查询分为以下几种: 合并结果集: UNION UNION ALL 连接查询 ...

  • 6.MySql中的SQL语句(五):多表查询

    多表查询有如下几种: 合并结果集;UNION、UNION ALL 连接查询 内连接[INNER] JOINON 外...

  • 杂项

    1.UNION与UNION ALL合并UNION将返回两个查询的结果并去除其中的重复部分,UNION ALL与UN...

  • 数据库查询

    一、union和union_all 1.union 和 union_all 将两个结果集合并在一起(可以查询不同的...

  • MySQL(十一)DQL之联合查询

    一、含义 union:合并、联合,将多次查询结果合并成一个结果 二、语法 查询语句1 union 【all】查询语...

网友评论

      本文标题:mysql union all 替代 in查询

      本文链接:https://www.haomeiwen.com/subject/dwfcqltx.html