---------------------------------------------------------------------------
-- 簡單查詢: 顯示所有的列,與指定的列
---------------------------------------------------------------------------
--用到表以及含義
--s_emp:員工表,存放與員工相關的數據
--s_dept:部門表,存放與部門相關的數據
--查詢語句
--選取指定的列
--請查出所有員工,顯示ID,first_name,last_name
select
id, first_name, last_name
from
s_emp;
--sql語句的要素:
--keyWord
--sql子句
--sql語句
--注意:大小寫不敏感,可以換行,關於“;”號,
--顯示的列名大寫,對齊方式
--select :列與列之間用","分割
--from
--理解:sql子句執行的順序
--練習:選取所有的部門,顯示ID,NAME,REGION_ID
--如何知到指定的表中有什麼列?什麼是數據類型
desc s_emp
--如何知到我們可以查詢那些表?
select
table_name
from
tabs;
--選取所有的列
--查找部門表中所有的數據,並且全部顯示的列
--練習:查詢員工表中的所有的列
select
*
from
s_dept
--對數字(日期)列的運算
--查詢所有員工,顯示last_name,薪水
--注意運算的優先級別,括號。
--對字符列的連接
--將員工的first_name,last_name聯合起來顯示
--字面量(Literal)的處理
--將員工的first_name,last_name聯合起來顯示,
--first_name,last_name之間用“-”分割
select
first_name || '-' || last_name
from
s_emp;
--注意:文本,日期類型的字面量加'',數字類型的不用加''。
--練習將員工的first_name,last_name聯合起來顯示,
--first_name,last_name之間用“ ”分割
--用別名改善輸出(as)
--查詢所有員工,顯示id,年薪(total)
select
id, salary * 12 total
from
s_emp;
--注意對有特殊字符,關鍵字,大小寫敏感的別名用""處理
--練習將員工的first_name,last_name聯合起來顯示,
--first_name,last_name之間用“ ”分割,輸出列名name
--並且顯示年薪(total)
select
first_name || ' ' || last_name "name" ,
salary *12 total
from
s_emp
--過濾重復的列
--查詢系統中所有部門的部門名稱
select
distinct name
from
s_dept
--查詢系統中有哪幾種部門,顯示名稱
--練習:員工(s_emp)都有那幾種title,那幾種部門dept_id
select
distinct title, dept_id
from
s_emp
--注意,distinct對後面所有的列有作用
-------------------------------