这个SQL查询让我感到厌恶.我没有写它,但它是我们服务器问题的一个重要原因.我愿意将它分成多个查询并通过PHP进行一些处理(比如,RAND()).

$sql = "SELECT a.code,a.ad_id,a.position,a.type,a.image,a.url,a.height,a.width

FROM " . AD_TABLE ." a," . USER_GROUP_TABLE . " g

WHERE (a.max_views >= a.views OR a.max_views = '0')

AND (FIND_IN_SET(" .$forum_id. ",a.show_forums) > 0 OR a.show_all_forums = '1')

AND g.user_id = " . $user->data['user_id'] . "

AND FIND_IN_SET(g.group_id,a.groups)

AND FIND_IN_SET(" . $user->data['user_rank'] . ",a.ranks)

AND a.start_time < " . time() . "

AND a.end_time > " . time() . "

AND (a.clicks <= a.max_clicks OR a.max_clicks = '0')

ORDER BY rand()";

是的,粘贴之后我觉得很蠢…

编辑:以下是上述格式的示例查询“EXPLAIN”的结果,逗号分隔:

"id","select_type","table","type","possible_keys","key","key_len","ref","rows","Extra"

1,"SIMPLE","g","user_id","3","const",6,"Using temporary; Using filesort"

1,"a","ALL","max_views","",10,"Using where"

它是

php 优化sql,php – 优化此SQL查询相关推荐

  1. SQL Server 优化---为什么索引视图(物化视图)需要with(noexpand)强制查询提示

    本文出处:http://www.cnblogs.com/wy123/p/6694933.html 第一次通过索引视图优化SQL语句,以及遇到的一些问题,记录一下. 语句分析 最近开发递交过来一个查询统 ...

  2. SQL性能优化-查询条件与字段分开执行,union代替in与or,存储过程代替union

    PS:概要.背景.结语都是日常"装X",可以跳过直接看优化历程 环境:SQL Server 2008 R2.阿里云RDS:辅助工具:SQL 审计 概要 一个订单列表分页查询功能,单 ...

  3. sql查询索引语句_sql优化总结--基于sql语句优化和索引优化

    概述 最近做查询,统计和汇总.由于数据量比较庞大,大部分表数据上百万,甚至有的表数据上千万.所以在系统中做sql优化比较多,特此写一篇文章总结一下关于sql优化方面的经验. 导致查询缓慢的原因 1.数 ...

  4. MySQL数据库性能优化由浅入深(表设计、慢查询、SQL索引优化、Explain分析、Show Profile分析、配置优化)

    文章目录 0 SQL性能分析 1 表的设计合理化 1.1 为什么需要范式 1.2 三范式原理 1.3 什么样的表才满足三范式 2 慢查询 2.1 慢查询介绍 2.2 慢查询步骤 3 添加适当索引 3. ...

  5. SQL索引优化之explain查询计划

    前言 最近工作当中使用SQL的场景比较多,遇到了一些瓶颈,在SQL优化这方面做了一些了解. 在SQL应用中影响性能最多的就是慢查询,关于慢查询的优化,主要有这几个着手的方向: 监控sql执行情况,发邮 ...

  6. mysql 多表联查语句优化_?多表联合查询SQL语句优化

    11.27 多表联合查询的优化方式,优化后的SQL及分析 优化方式: 1.尽量不用'*' 2.小表作驱动 3.大表建索引 原本SQL语句: select * from order left join ...

  7. SQL性能优化技巧,常见优化10经验,数据库查询好慢,还能怎么办

    我熟练应用ctrl c和ctrl v 开发curd代码好多年了. mysql查询为什么会慢,关于这个问题,在实际开发经常会遇到,而面试中,也是个高频题. 遇到这种问题,我们一般也会想到是因为索引. 那 ...

  8. MySQL-如何定位慢查询SQL以及优化

    如何定位慢查询SQL以及优化 慢查询日志记录慢SQL explain查看分析SQL执行计划 profile分析执行耗时 Optimizer Trace分析详情 确定问题采用响应措施 慢查询日志记录慢S ...

  9. PostgreSQL SQL中的ALL,ANY,SOME的用法,sql查询速度优化,sql运行优化

    PostgreSQL SQL中的ALL,ANY,SOME的用法,sql查询速度优化,sql运行优化 准备两个表: --T1(2,3) --T2(1,2,3,4)--ALL,ANY,SOME 的子查询 ...

  10. 使用 DMV 进行监视_监视查询性能_针对 Azure SQL 数据库和 Azure SQL 托管实例进行手动性能优化

    本文适用:AZURE SQL数据库,AZURE SQL托管实例 SQL是系统和数据库交互的重要方式,日常工作中我们经常被性能糟糕的SQL所干扰.同样在AZURE数据库中,我们依旧面临相同的问题.缓慢或 ...

最新文章

  1. 智源研究院多位学者入选“三大奖”!2020年度国家科学技术奖初评结果公布
  2. 回文java_回文 Java
  3. 使用dict和set
  4. SVN使用和解决方案
  5. Express接口案例——完成文章增删改查接口
  6. 设计模式的C语言应用-状态机模式-第二章
  7. UE3 GPU性能和分析
  8. 搭配和谐的色彩的秘密
  9. opencv漫水填充算法
  10. 网页版 Nginx 配置文件生成器发布,在线一健生成神器!不用愁了!
  11. iOS(swift): Core ML的使用
  12. 服务器上需要高性能显卡吗,英特尔要做独立显卡 只因服务器市场太重要
  13. sshd远程主机间的访问
  14. 微信朋友圈两大神秘江湖帮派:养生党、鸡汤党
  15. 真正的人品,藏在对弱者的态度里
  16. ssm中小企业仓库管理信息系统的开发与实现毕业设计源码150916
  17. Java SE核心I
  18. An error occurred while filtering resources
  19. [windows]远程桌面用户管理
  20. PART 1/“物网(物联网)”的差异化需求

热门文章

  1. OpenCV——膨胀与腐蚀
  2. excel排名_excel函数技巧:看看按条件排名要如何进行?
  3. Tensorflow C++ API调用Keras模型实现RGB图像语义分割
  4. 在CentOS 6.3 64bit上搭建python高性能框架gevent开发环境
  5. 在CentOS 6.3 64bit上安装ATS 5.3 LTS版本并测试
  6. 在Ubuntu 14.04 64bit上编译安装xbt tracker
  7. My view towards Machine Learning
  8. 第二十五章 面向对象------封装、内置函数、反射、动态导入
  9. Spring Security的RBAC数据模型嵌入
  10. WEBSHELL恶意代码批量提取清除工具