Oracle從入門到精通 關於簡單查詢的問題

視頻課程:李興華 Oracle從入門到精通視頻課程

學習者:陽光羅諾

視頻來源:51CTO學院

如果要進行查詢,肯定使用的時DML中的查詢部分支持,相對於簡單查詢而言,通俗的理解,就是全部記錄都查詢,但是可以通過語法控制列的顯示與否。
簡單查詢的SQL語法結構如下所示:

    ②SELECT [DISTINCT] * |列[別名],別[別名],…….①FROM 表名稱[別名];

兩者在執行的順序上是先從①開始執行,然後再去執行②

舉例:如果再select子句之中使用了“*”表示的是查詢一張表中的所有數據列。

範例:查詢emp表中的全部記錄

    SELECT * FROM emp;

在本程序中,from子句是確定數據來源,來源只要是表結構(行與列的集合),而select子句控制的是所需要的數據列。

範例:進行數據的投影————控制所需要顯示的數據列。
查詢每個員工的編號、姓名、基本工資

語法格式:

        SELECT empno,ename,sal,job FROM emp;

Oracle從入門到精通 關於簡單查詢的問題

除了進行基本的查詢列之外,在簡單查詢之中也支持四則運算,並且可以直接使用列的內容進行四則運算。

要求查詢出每一個僱員的編號、姓名、基本年薪(月工資sal,年薪*12);

語法格式:

        SELECT empno,ename,sal*12  FROM emp;

發現此時部分的列表名稱不好看,爲了達到美觀效果,可以進行別名的設置。
我們可以這樣子去寫。但是在一般情況下,都不建議使用中文。

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

實際上在以後定義的數據表名稱或者是列名稱的時候中文也支持,但是你想讓你開發正常點,儘量都去使用英文。
Oracle從入門到精通 關於簡單查詢的問題
實際上在進行簡單查詢的過程之中,還支持數據的連接操作,使用“||”進行連接。

範例:觀察連接。

    SELECT empno || ename FROM emp;

結果圖如下:
Oracle從入門到精通 關於簡單查詢的問題
相信這個結果圖,很多人看了肯定是這是什麼玩意?爲了使得這個連接效果變得更好看一點。我們可以在中間使用一些文字描述。
例如:現在希望最終的格式是:“編號:XXX,姓名:XXX”,對於我們的編號和姓名都是通過數據表的查詢出來的數據列。針對於一些固定輸出的內容就必須進行處理,對於此部分的處理暫時只考慮使用兩種類型的數據:

    普通數字:那麼直接編寫。(SELECT ename || 1 FROM emp;)

Oracle從入門到精通 關於簡單查詢的問題
字符串:使用單引號說明。(SELECT empno || ‘hello’ FROM emp;)
Oracle從入門到精通 關於簡單查詢的問題
範例:實現格式化輸出
語法格式:

        SELECT ‘編號:’ || empno || ‘姓名:’ename FROM emp;

Oracle從入門到精通 關於簡單查詢的問題

在簡單查詢中,有一個DISTINCT關鍵字,此關鍵字的主要目的是消除重複內容。

範例:查詢所有僱員的職位信息。
Oracle從入門到精通 關於簡單查詢的問題
在圖中,我們會發現,又很很多人一起辦公,那麼現在如果不希望在裏面出現重複的內容,那麼就可以在SELECT子句中使用DISTINCT來消除重複的內容。
語法格式:

    SELECT DISTINCT Job FROM emp;

結果如圖:
Oracle從入門到精通 關於簡單查詢的問題
注意:如果消除重複內容,指的是查詢出來的數據所有列的內容都重複查詢的結果。

範例:觀察如下查詢的結果

    SELECT DISTINCT ename,Job FROM emp;

結果如下:
Oracle從入門到精通 關於簡單查詢的問題
相信你會看到又是出現14行的數據內容。此時
因爲姓名和職位沒有同時重複的內容,那麼將無法刪除掉那些重複的內容。

總結:簡單查詢的最大特徵在於:控制數據列,但是它無法進行數據列的控制。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章