1.用exists 代替 in

原理:exists 是存在一个即返回一个 而in是做全盘扫描得出所有条件内的数据

(高效)
select *From member where age>18 and exists (select 'x' from Person where member.name =Person.name='cyao')
(低效)
select *From member where age>18 and name in (select name From Person where name='cyao')

2.用exists 代替DISITNCT

(高效)
select name ,age from mamber as d where exists (select 'x' from person as e where e.name = d.name)
(低效)
select Distinct name ,age from mamber as d ,person as e where e.name = d.name

3.尽量避免在select 后面 加*

4.尽量避免空值查询 所有的字段尽量有设置默认值。例如num列默认值为0;判断由where num is null  -> where num=0

5.尽量使用数字型字段,例如status=1 激活  status=2 代表删除

6.避免频繁创建和删除临时表,以减少系统表资源的消耗。

最新文章

  1. 我的公司培训讲义(1):.NET开发规范教程
  2. 关于Http状态码
  3. 深入浅出SQL笔记1–数据和表
  4. Knockout 官网翻译
  5. iOS开发 QQ粘性动画效果
  6. ssh IP打通,hadoop启动失败
  7. 用尽洪荒之力解决Apple Store ipv6审核通关---linux服务器支持ipv6
  8. Linux内核中的Kconfig、xx.defconfig、xx.config、Makefile
  9. window下版本控制工具Git 客户端安装
  10. 获取机器本地的公网ip地址
  11. C# Log4Net使用指南(转)
  12. kvstore之mongodb为存储介质
  13. [笔记]cin、cout与scanf、printf的效率差异对比分析
  14. 新浪微博share分享接口请求奇葩错误
  15. 使用异步方法在XAML中绑定系统时间
  16. appium-desktop录制脚本二次开发,生成我司自动化脚本
  17. EXT 设置编辑框为只读
  18. iconfont图标应用
  19. 在Linux安装ASP.NET Core运行时环境
  20. A标签中 href 和 onclick用法、区别、优先级别

热门文章

  1. mysql基础知识和pymysql
  2. Matrix快速幂 模板
  3. Dinic最大流 || Luogu P3376 【模板】网络最大流
  4. ascii 八进制
  5. 通过METAMASK调试和发布智能合约指南(转载)
  6. lnamp完整版[linux+apache2.4+php5.6.6+mysql5.6]
  7. 计算两个GPS坐标的距离
  8. angularjs表单注册--两次密码验证
  9. SpringBoot整合AOP
  10. github上.md的编写