Oracle資料庫培訓課程_L6-1_SQL查詢(簡單查詢)

如果要進行查詢


需要使用  DML 中   之  查詢部分支持

對於簡單查詢而言 通俗理解

就是可以將資料表中的全部紀錄都調出(查詢出來)


簡易SQL查詢語法

SELECT [DISTINCT] * | 行[別名] , 行[別名] , .....    ------> Step2.

FROM 表名稱 [別名]       ---->  Step1

如果在  SELECT 子句 中   使用了  * 表示  查詢一張表中所有資料列

例如:  查詢  EMP表中  所有資料紀錄



有時候我們只要展示一部分  就需要控制所需要的資料列(資料投影操作)

老闆

從職員表中   查詢    職員編號 、 職員姓名 、工作職稱、 工資



select empno , ename , job , sal from emp;




此外有時候也需要支持一些四則運算

並可以直接使用列的內容進行四則運算

現在要求查詢顯示每個雇員的

編號、姓名、基本年薪(月工資:sal,年薪:sal * 12)


SELECT empno , ename , sal*12   FROM emp;




在此就多出了別名設置


SELECT empno , ename , sal*12 income FROM emp;



當然也可以設置成中文



SELECT empno 雇員編號 , ename 雇員姓名, sal*12 年資 FROM emp;



實際上在進行簡單查詢中  還支持資料數據的連接操作

使用 "||"  進行連接。

觀察連接



SELECT empno || ename FROM emp;



可以發現年一起了


可以將連接變好看些  中間使用一些文字描述



目前希望最終呈現 格式為  :  "編號:XXX , 姓名:XX"

對於編號和姓名肯定是透過資料表查詢出來的資料列。

但現在對於一些固定輸出內容必須進行處裡

部分處理暫時分兩種類型資料:

(1)普通數字  --->  直接編寫

SELECT empno || 1 FROM emp;




(2)字串 --->   加 單引號

SELECT empno || 'Hello' FROM emp;





 格式化輸出操作    "編號:XXX , 姓名:XX"


select '編號:' || empno || ', 姓名:' || ename from emp;



DISTINCT 指令

現在我們要來查詢公司有哪幾種職位

select job from emp ;

同一個職位   必定有多個人做

若不想出現重複內容就增加  distinct



select distinct job from emp;




乍看之下  所加的 distinct 語句

可以 消除重複內容

但事實上 是指 查詢出來的資料所有列的內容都重複


這裡  姓名  和  職位  並沒有 同時重複

因此又回復   14 列














留言

這個網誌中的熱門文章

何謂淨重(Net Weight)、皮重(Tare Weight)與毛重(Gross Weight)

Architecture(架構) 和 Framework(框架) 有何不同?_軟體設計前的事前規劃的藍圖概念

經得起原始碼資安弱點掃描的程式設計習慣培養(五)_Missing HSTS Header