Oracle基本操作1


1.查詢當前用戶下所有表名

  1. select table_name from user_tables;
    在這裏插入圖片描述

2.行轉列

  1. 統計每個部門下的人數
    在這裏插入圖片描述
  2. 行轉列
    語法:case when…then…else…end
    在這裏插入圖片描述
    我們只想要一列顯示一個結果,所以在前面加個max
    在這裏插入圖片描述

3.時間截取

dual是一張虛擬表,當你只有一個字段,可以使用這個虛擬表做測試
在這裏插入圖片描述

4.數據合併

語法:
merge into 表1 using 表2 on 條件
when matched then
when not matched then

  1. 先創建兩張表,插入數據。
    在這裏插入圖片描述
  2. 將B表合併到A表,如果A表存在相同記錄,在覆蓋更新,如果沒有則插入。
    可以看到1122記錄的sal被替換成B表的3000,1144的ename和sal也被B表替換。
    新增插入了EE和FF。
    在這裏插入圖片描述

5.遞歸

語法:
select …from table [where 條件]
start with 條件
connect by —用於指定父行和子行的關係
[prior 字段1 = 字段2] —prior在等號左邊,向下取
[字段1 = prior字段2];—prior在等號右邊,向上取

  1. 在中國地級市表中 取 104001008002 南關區 所有上級城市
    在這裏插入圖片描述
  2. 中南地區的所有下級省份,城市,區縣
    在這裏插入圖片描述
    在這裏插入圖片描述
  3. 查看中南地區的所有下級城市列表,城市level屬於3
    在這裏插入圖片描述
  4. 顯示地區,省份,城市,區縣
    當c_id的長度等於6時,爲省份。我們只要進行多個自連接,c_id=superior_c_id,就能顯示所有地區詳細信息。
    在這裏插入圖片描述
    在這裏插入圖片描述
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章