sql查询语句的书写顺序、执行顺序及注意事项(优化策略)

查询中用到的关键词主要由6个,分别是:

select、from、where、group by、having、order by


书写顺序:

顺序与上一行一致。不过其中select和from为必须,其他关键词是可选

执行顺序:

from、where、group by、having、select、order by

from:从哪张表检索数据

where:设置条件,过滤表中数据

group by:将上面过滤出的数据,进行分组

having:对上面已经分组的数据进行过滤的条件

-------到此检索的数据操作已经完毕,以下处理仅仅用来设置查看规则-------

select:指定查看结果集中的那个列或列的计算结果

order by:设置查看返回数据的方式


注意事项:

(1)from后面的表关联,解析是自右向左解析的(最后面的那个表为驱动表,尽量将数据量小的表放在后面来进行关联,即用小表去匹配大表)

(2)where子句的执行顺序不同数据库顺序不同:Oracle自右向左,mysql则是自左向右,但同样的思想:把能筛选出小量数据的条件先执行,同样用小表去匹配大表

(3)尽量少的使用having子句,因为很耗资源

(4)select子句中尽量地去指明地段名称,少用*号

(5)order by子句同样很耗资源,尽量少用,其执行顺序为从左到右



猜你喜欢

转载自blog.csdn.net/liu123641191/article/details/80376414