case when嵌套子查询_Oracle基础连接查询!!!
1. 字符到日期的轉換
(1) 在Oracle中將字符轉換為日期的函數是什么?
(2) To_date(‘字符’,’轉換格式’)
To_date(‘2019-03-04’,’yyyy-MM-dd’)
2. 函數嵌套
(1) 什么是函數嵌套?
1.函數里面套函數.為了得到我們想要的數據
(2) 嵌套函數的執行順序是什么?
1.從內到外
3. 通用函數NVL與NVL2
(1) 在Oracle中通用函數有哪些?
1. nvl(e1,e2)
2. Nvl2(e1,e2,e3)
3. Nullif(e1,e2)
4. Coalesce(e1,e2,...,eN)
(2) NVL與NVL2的作用是什么? 他們之間的區別是什么?
1. Nvl可以將空值轉換為一個實際值
2. Nvl2如果e1非空,nvl2返回e2.如果e1為空,nvl2返回e3.參數e1可以是任意數據類型
3. 區別nvl兩個參數,nvl2有三個參數
4. 通用函數NULLIF與COALESCE
(1) NULLIF函數的作用是什么?
1.nullif(e1,e2)函數:比較兩個表達式,如果相等,函數返回空,如果不相同,函數返回第一個表達式,第一個表達式不能為空
(2) COALESCE函數的作用是什么?
2.coalesce(e1,e2,...,eN)函數:返回列表中的第一個非空表達式(按順序)
5. 條件表達式CASE與DECODE函數
(1) CASE表達式的作用是什么?
1.case表達式:case表達式可以讓你在SQl語句中使用if-then-else邏輯.如果沒有when...then滿足條件并且else語句存在則返回else里的值.否則返回空.所有的表達式(expr,comparsion_expr和return_expr)必須是相同的數據類型
(2) DECODE函數的作用是什么?
簡化case表達式
Decode(表達式,判斷語句,結果,判斷語句2,結果,...默認值(沒有默認值返回null)
6. 什么是多表查詢
(1) 什么是多表查詢?
1.當查詢的數據不是來自一個表時,我們就需要多表連接操作完成查詢,根據不同表之間的數據關系查詢相關聯的數據
(2) 多表查詢鏈接方式有哪些?
內連接:連接兩個表,通過相等或不等判斷鏈接列,成為內連接.在內連接中典型的連接運算有=或<>之類的比較運算符.包括等值鏈接和自然鏈接
等值連接
非等值連接
自連接
SQL99:交叉連接(cross join)
SQL99:內連接(inner join)
SQL99:自然連接(natural join)
外連接:在兩個表之間的連接,返回內連接的結果,同時還返回不匹配行的左或右表的連接,成為左或右.返回內連接的結果,同時還返回左和右連接成為全連接
左外連接
右外連接
全外連接
子查詢:當一個查詢時另一個查詢的條件是,稱之為子查詢.
7. 笛卡爾乘積
(1) 什么是笛卡爾乘積?
笛卡爾乘積是指在數學中,兩個集合X和Y的笛卡爾積,又稱直積,表示為X*Y,第一個對象是X的成員而第二個對象是Y的所有可能有序對的其中一個成員
(2) 如何避免笛卡爾乘積?
當一個連接條件無效或被遺漏時,其結果是一個笛卡爾乘積,其中所有的行的組合都被顯示,第一個表中所有的行連接到第二個表中所有行,一個笛卡爾乘積會產生大量的行,其結果沒有什么用,應該在where子句中始終包含一個有效的連接條件
8. 多表連接語法
(1) 多表連接查詢的語法結構是什么?
1. 使用一個連接從多個表中查詢數據
Select table1.column,table2.column
From table1,table2
Where table1.column1=table2.column2;
(2) 什么是定義連接?
當數據從多表查詢時,要使用連接(join)條件.一個表中的行按照存在于相應列中的值被連接到另一張表中的行
(3) 多表連接的原則是什么?
1. 在寫一個連接表的select語句時,在列名前面用表名或者表列名可以使語義清楚,并且加快數據庫訪問
2. 為了連接n個表在一起,你最少需要n-1個連接條件.
9. 等值連接
(1) 什么是等值連接?
等值連接也被稱為簡單連接或內連接.是通過等號來判斷連接條件中的數據值是否相匹配
(2) 什么是抉擇矩陣?
是通過行與列來分析一個查詢的方式
例如:如果你想顯示同一個部門中所有名字為Taylor的雇員的名字和部門名稱,可以寫出先的決策矩陣:
投影列 源表 條件
Last_name employees last_name=’Taylor’
Department_name departments employees.department_id=department.department_id
10. 使用表別名
(1) 表別名的作用是什么?
使用表別名簡化查詢語句的長度
(2) 使用表別名的原則是什么?
1. 表別名最多可以有30個字符,但短一些更好.
2. 如果在From子句中表別名被用于指定的表,那么在整個select語句中都可以使用表別名
3. 表別名應該是有意義的
4. 表別名只對當前的select語句有效
11. 非等值連接
(1) 什么是非等值連接?
一個非等值連接是一種不使用向等(=)作為連接條件的查詢.如!=,<,>,<=,>=,between and等都是非等值連接的條件判斷
12. 自連接
(1) 什么是自連接?
使用一個表連接它自身的操作
總結
以上是生活随笔為你收集整理的case when嵌套子查询_Oracle基础连接查询!!!的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: WIFI认证请求被拒绝接入认证被拒绝怎么
- 下一篇: c修改datatable单元格的值_神奇