接口的查询超时;需要sql的优化

您所在的位置:网站首页 sql查询排序语句怎么写 接口的查询超时;需要sql的优化

接口的查询超时;需要sql的优化

2023-07-09 00:49| 来源: 网络整理| 查看: 265

sql优化 (加索引,select查询写字段,查询一条数据写limit 1 ,用连接查询代替子查询,小表驱动大表,排序尽量用索引字段) 1、select语句务必指明字段名称; 2、当只需要一条数据的时候,使用limit 1 3、如果排序字段没有用到索引,就尽量少排序,可以在程序中排序 4、联合查询 尽量用union all代替union 5、建立索引  引起索引失效的情况: 1、使用了select *; 2、索引列上有计算或是函数;3、模糊匹配like查询%开始,4、使用了or连接 6、用连接查询代替子查询 7、小表驱动大表 in()  in 适用于左边大表,右边小表。exists 适用于左边小表,右边大表。   8、先缩小数据的范围之后,再分组或排序; group by  having  9、合理的数据类型;         inner join:求两个表交集的数据。         union对两个结果集进行并集操作,不包括重复行,相当于distinct, 同时进行默认规则的排序;         union all: 对两个结果集进行并集操作, 包括重复行, 不进行排序; 注意:  UNION 和 UNION ALL 内部的 SELECT 语句必须拥有相同数量的列         每条 SELECT 语句中列的顺序必须相同         union all 结果字段的顺序以 union all 前面的表字段顺序为准         各 SELECT 语句字段名称可以不同,但字段属性必须一致。         查询的两张表的字段不统一,如果table1比table2的字段内容多,可以使用空字符串来代替;         如果有筛选条件, 务必先各自筛选,最后在统一的排序;

如果是长度固定的字段,比如用户手机号,一般都是11位的,可以定义成char类型,长度是11字节。 长度固定的字符串字段,用char类型。 长度可变的字符串字段,用varchar类型。 金额字段用decimal,避免精度丢失问题。  



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3