資料查詢,Oracle關於SELECT查詢及其子句
阿新 • • 發佈:2019-02-17
資料查詢 Author:ZZU_ZZX
SELECT的基本語法:
•SELECT……FROM…… 最基本的結構,最基本的兩個子句 •還有一些其他的子句。例如:INTO子句建立新表並把查詢結果插入新表 WHERE子句指定查詢條件 GROUP BY子句指定查詢結果的分組條件 HAVING子句 指定組或統計函式的搜尋條件(COUNT(),AVG()………) ORDER BY子句指定結果集的排序SELECT INTO FROM語句: 語句形式為:連線查詢:
•連線查詢分為內連線INNER JOIN和外連線 •外連線又分為左外連線(LEFT OUTER JOIN/ LEFT JOIN),右外連線(RIGHTOUTER JOIN/RIGHT JOIN)和全外連 接(FULL OUTER JOIN/FULL JOIN) •內連線取交集 •左連線左邊的全取右連線右邊的全取 •如果加號(+)寫在左表,右表就是全部顯示,所以是右連線。為了更清楚的認識內外連線的區別特舉例項:(圖中紅色字型為查詢結果) SELECT中(+)的使用:(只用在外連線中)
①SELECT STU.ID, EXAM.ID, STU.NAME, EXAM.GRADE FROM STU RIGHT JOIN EXAM ON STU.ID =EXAM.ID ②SELECT STU.ID, EXAM.ID, STU.NAME, EXAM.GRADE FROM STU,EXAM WHERE STU.ID(+) =EXAM.ID 如果加號(+)寫在左表,右表就是全部顯示,所以是右連線。•①(+)操作符只能出現在WHERE子句中,並且不能與OUTER JOIN語法同時使用。 •②當使用(+)操作符執行外連線時,如果在WHERE子句中包含有多個條件,則必須在所有條件中都包含(+ )操作符。 •③(+)操作符只適用於列,而不能用在表示式上。 •④(+)操作符不能與OR和IN操作符一起使用。 •⑤(+)操作符只能用於實現左外連線和右外連線,而不能用於實現完全外連線下面兩種連線方法執行結果相同(方法①使用RIGHT JOIN,方法②使用操作符(+)):