sql語句解析順序和執行順序


sql語句執行順序
1.from子句組裝來自不同數據源的數據
2.where子句基於指定的條件對記錄行進行篩選
3.group by子句將數據划分為多個分組
4.使用聚集函數進行計算
5.使用having子句篩選分組
6.計算所有的表達式
7.select 的字段
8.使用order by對結果集進行排序

 

sql語句解析順序
1.表名和條件字段寫錯
select * from sysuser where username='abc'
結果:ORA-00942: 表或視圖不存在

2.條件字段和查詢列寫錯
select userid from sys_user where username='abc'
結果:ORA-00904: "USERNAME": 標識符無效

3.查詢字段和group by語句寫錯
select userid from sys_user where user_name='abc' group by username
結果:ORA-00904: "USERNAME": 標識符無效

4.查詢字段和order by字段寫錯
select userid from sys_user where user_name='abc' order by username
結果:ORA-00904: "USERNAME": 標識符無效

5.group by和order by 字段寫錯
select user_id from sys_user where user_name='abc' group by username order by userid
結果:ORA-00904: "USERID": 標識符無效

6.join和where字段寫錯
select a.* from
(select * from sys_user) a
left join
(select * from sys_user) b
on (a.userid=b.user_id)
where a.username='abc'
結果:ORA-00904: "A"."USERID": 標識符無效


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM