1、簡單查詢
使用Oracle sql developer使用前,必須開啟的服務:
查詢emp表上的數據: select * from emp;
Null為空,空不代表等于沒有,null!=0.
重新連接后,注意大小寫及空格位!
簡單查詢中,主要有兩個子句完成。
1、Select:子句中有如下的內容:
*:表示查詢所有數據列
列名稱:表示要顯示指定的數據列,列可以設置名稱
Distinct:表示去除重復數據的顯示
2、From:定義要使用的數據表,就可以理解數據來源(來自與什么地方)
一、基礎語法:
所有固定語法部分為紅色,變動的語法不變色。
1、查詢公司的雇員信息:編號,姓名,基本工資。
SELECT empno,ename,sal FROM emp;
執行的順序問題:
1、form子句:表示數據來源
2、Select子句:要顯示的數據列
2、其他查詢語法
要查詢公司所有雇傭的職員信息
Select job from emp ;
一個職位多個人員,如果要消除重復的職位,可以用: distinct 完成
只局限所有列的全部內容,查詢中多增加了一個 empno 字段。
Select distinct empno,job from emp ;
因為有兩列內容輸出:
只能去除同一列完全心相通的情況下,反之不在同一列,無法相處重疊的情況
在簡單的select 語句中也支持四則運算(+ - * /)
查詢雇員編號,姓名,年薪,日薪。
Select empno,ename,sal12,sal/30 from emp;
年薪=月薪12個月 , 日薪=月薪/30天,對于小數部分的處理,留給單行函數。
每個雇員年底有5000元的年終獎,查詢雇員編號,姓名,增長后的基本工資(不包括傭金)
Select empno,ename,sal12+5000 from emp;
Round( , 2)為保留兩位小數
公司每個月為員工增加200的補助金,此時,要求查詢每個員工的編號,姓名,基本工資
Select empno,ename,(sal+200)12+5000 from emp;使用(),改變優先級。select empno,ename,sal12,sal/30 from emp;
(sal+200)*12+5000 表示不明確,則加上別名:年薪
如:Select empno,ename,(sal+200)*12+5000 年薪 from emp;
Select empno,ename,(sal+200)*12+5000 as 年薪 from emp;
此處加不加‘as’,對于最終的結果沒有區別,如果要進行別名設置,在程序之中沒用的,顯示中用處也不大,而且要記住,不要使用中文。
Select empno AS 雇員編號,ename AS 雇員姓名,(sal+200)*12+5000 AS 年薪 from emp;
此處給出的年薪是什么類別的貨幣?所以希望給個可認識的貨幣標識。如:‘¥’。
Select empno AS 雇員編號,ename AS 雇員姓名,(sal+200)*12+5000 AS 年薪,‘¥’ AS 貨幣 from emp;
貨幣的標識,實際上就是一個字符串常量,字符串使用直接輸出的方式進行定義
使用‘||’進行字符串及列數據的連接:
select ‘編號是:’ || empno || ‘的雇員姓名是:’ || ename || ‘基本工資是’ || sal AS 雇員信息 from emp ;
添加‘雇員信息’,確保整體信息的完整性。
熟悉 單引號 的使用 如 ‘ ’ 。
單個字符,需要用到單雙引號