• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase
您的位置:首页 > 数据库 >Mysql > mysql 查询重复的数据的SQL优化方案

mysql 查询重复的数据的SQL优化方案

作者: 字体:[增加 减小] 来源:互联网 时间:2017-05-11

通过本文主要向大家介绍了mysql插入数据sql语句,mysql sql导入数据,mysql sql语句大全,mysql的sql优化,mysql导入sql文件等相关知识,希望本文的分享对您有所帮助

在mysql中查询不区分大小写重复的数据,往往会用到子查询,并在子查询中使用upper函数来将条件转化为大写。如:

select * from staticcatalogue WHERE UPPER(Source) IN (SELECT UPPER(Source) FROM staticcatalogue GROUP BY UPPER(Source) having count(UPPER(Source))>1) ORDER BY upper(Source) DESC;
</div>

这条语句的执行效率是非常低的,特别是Source字段没有加索引。尤其是最忌讳的在查询条件中使用了函数,这将极大的降低查询速度,如果查询十万条数据以内的10分钟内还能获取到数据,如果是查询几十万条的话,会直接把服务器跑死的,此时可以通过一个临时表,并且加索引,再查询。这样可以提高很多的速度

CREATE TABLE staticcatalogue_tmp SELECT UPPER(Source) AS Source FROM staticcatalogue GROUP BY UPPER(Source) having count(UPPER(Source))>1;
ALTER TABLE staticcatalogue_tmp add INDEX TX_1 (Source);
select s.* from staticcatalogue s WHERE UPPER(s.Source) IN (SELECT st.Source FROM staticcatalogue_tmp st) ORDER BY UPPER(s.Source) DESC ;
</div>

以上就是本文sql优化方案的全部内容了,希望大家能够喜欢。

</div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 用SQL语句解决mysql导入大数据文件的问题
  • mysql 查询重复的数据的SQL优化方案
  • 用一条mysql语句插入多条数据

相关文章

  • 2017-05-11MySQL数据库InnoDB数据恢复工具的使用小结详解
  • 2017-05-11mysql中提高Order by语句查询效率的两个思路分析
  • 2018-12-05关于SSE的10篇文章推荐
  • 2018-12-05TRUNCATE 快速删除表中的所有数据
  • 2018-12-05SQL 判断给定日期值(或时间段)所在星期的星期一和星期天的日期
  • 2018-12-05MySQL5.7.18在Windows如何下安装的教程
  • 2018-12-05PDO连接数据库及DSN详解
  • 2017-05-11Centos5.5中安装Mysql5.5过程分享
  • 2018-12-05MySQL数据库编码如何设置以及查看
  • 2018-12-05sqlserver另类非递归的无限级分类(存储过程版)

文章分类

  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase

最近更新的内容

    • SQL Server 总结复习(一)
    • dos或wamp下修改mysql密码的具体方法
    • sql server中datetime字段去除时间的语句
    • mysql智能存储过程
    • 有关time_zone的文章推荐10篇
    • SQL LIKE 通配符随笔
    • mySQL 延迟 查询主表
    • 得到自增列的下一个会插入的id
    • 基于mysql的bbs设计总结
    • MySQL 绿色版安装方法图文教程

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有