当前位置:数据库 > SQLServer >>

SQL查询的几点注意事项

  1. 不使用select * ,而是列出需要查询的列名。
 
    2. 对于多个表查询,用相应的别名+列名查询,减少解析时间。如:
 
    select a.p_personId,a.p_personName,b.p_易做图Name
 
    from p_person a
 
    left join p_易做图 b on a.p_personId= b.p_personId;
 
  而不要写成
 
    select a.p_personId,p_personName,p_易做图Name
 
    from p_person a
 
    left join p_易做图 b on a.p_personId= b.p_personId;
 
 
 
 
  二楼提出此句可改为
 
    select a.p_personId,a.p_personName,b.p_易做图Name
    from p_person a
    left join p_易做图 b using(personId);
 
  学习了
 
 
 3. 关于create table select的问题:create table select会比create table +insert into快很多,但会带来锁表问题
 
   4. 对于相关子查询用尽量用join代替:not in、not exists可用left join代替;in、exists可用inner join代替
 
   5. 对于判断记录是否存在,不要用count(*),而选择用left join或exists.
 
   6. 索引:尽量使用索引,但不要对索引列进行运算,如:
 
    select p_personId,p_personName
 
    from p_person
 
    where p_personId+2=100;
 
  而应改为
 
    select p_personId,p_personName
 
    from p_person
 
    where p_personId=100-2;
 
  不要在索引列中使用函数、格式转换、多字段连接(p_personId||’A’),尽量使用聚集索引
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,