主頁 > 知識(shí)庫 > Oracle基本查詢過濾排序示例解析

Oracle基本查詢過濾排序示例解析

熱門標(biāo)簽:阿爾巴尼亞地圖標(biāo)注app 開封智能外呼系統(tǒng)廠家 外呼線路外顯本地號(hào)碼 人工智能地圖標(biāo)注自己能做嗎 word地圖標(biāo)注方向 征服者火車站地圖標(biāo)注 征服眼公司地圖標(biāo)注 美圖秀秀地圖標(biāo)注 百度地圖標(biāo)注素材
基本查詢:
復(fù)制代碼 代碼如下:

--查詢所有員工的信息
select * from emp;
--設(shè)置行寬
set linesize 120;
--設(shè)置列寬為四個(gè)數(shù)字的寬度
col empno for 9999;
--設(shè)置列寬,a表示字符串共八位長(zhǎng)度
col ename for a8
--設(shè)置pageSize每頁顯示30條記錄
set pagesize 30;
--sql中支持算數(shù)表達(dá)式,注意:如果一個(gè)表達(dá)式中含有空值,則整個(gè)表達(dá)式為空
select empno,ename,sal,sal*12,comm,sal*12+comm from emp;
--使用濾空函數(shù)如果comm為空將以0代替
select empno,ename,sal,sal*12,comm,sal*12+nvl(comm,0) from emp;
--使用別名的三種方式,別名中有無雙引號(hào)的區(qū)別:帶雙引號(hào)的可以包含空格和特殊字符,不帶雙引號(hào)的則不能
select empno as "員工編號(hào)",ename "姓名",sal 月薪,comm,sal*12+nvl(comm,0)年收入 from emp;
--關(guān)于disctinct,相同記錄只取一次
select distinct deptno from emp;
--當(dāng)disctinct跟多個(gè)值時(shí),當(dāng)deptno和job均一樣時(shí),才認(rèn)為是相同記錄
select distinct deptno,job from emp;
--連接符的使用
select ename ||'的薪水是'||sal from emp;

注意:
SQL 語言大小寫不敏感。
SQL 可以寫在一行或者多行
關(guān)鍵字不能被縮寫也不能分行
各子句一般要分行寫。
使用縮進(jìn)提高語句的可讀性。

過濾和排序
復(fù)制代碼 代碼如下:

--查詢系統(tǒng)參數(shù)
select * from v$nls_parameters;
--修改日期格式
alter session set NLS_DATE_FORMAT='yyyy-mm-dd';
--隱士方式轉(zhuǎn)換日期,會(huì)影響性能
select * from emp where hiredate='1981-11-17';
--顯示方式轉(zhuǎn)換日期
select * from emp where hiredate=to_date('1981-11-17','yyyy-mm-dd');
--比較運(yùn)算符,查詢工資大于1000,小于2000的員工,between and含邊界
select * from emp where sal>=1000 and sal=2000;
select * from emp where sal between 1000 and 2000;
--in: 在集合中,查詢10號(hào)部門和20號(hào)部門的員工
select * from emp where deptno=10 or deptno=20;
select * from emp where deptno in (10,20);
--模糊查詢:查詢名字以S打頭的員工
select * from emp where ename like 'S%';
--查詢名字有四個(gè)字的員工,要求四個(gè)下劃線
select * from emp where ename like '____';
--查詢姓名中含義下劃線的員工,_下劃線為特殊字符需要轉(zhuǎn)義,escape 聲明轉(zhuǎn)義
select * from emp where ename like '%\_%' escape '\';
--查詢獎(jiǎng)金不為空的員工
select * from emp where comm is not null;
--查詢員工信息,按照月薪排序
select * from emp order by sal;
--a命令:追加命令,將上邊改為降序排序
a  desc
--查詢員工信息,按照年薪排序
select empno,ename,sal,sal*12 from emp order by sal*12;
--order by后面可以跟別名
select empno,ename,sal,sal*12 年薪 from emp order by 年薪;
--order by后面可以跟序號(hào)
select empno,ename,sal,sal*12 from emp order by 4;
--order by作用于多列,先按照第一列排序;然后按照第二列排
select * from emp order by deptno,sal;
--order by作用于多列,降序需要每列均有desc
select * from emp order by deptno desc,sal desc
--將空值排到最后
select * from emp order by comm desc nulls last;
--屏蔽/開啟反饋信息
set feedback off/set feedback on

排序的規(guī)則 :
可以按照select語句中的列名排序
可以按照別名列名排序
可以按照select語句中的列名的順序值排序
如果要按照多列進(jìn)行排序,則規(guī)則是先按照第一列排序,如果相同,則按照第二列排序;以此類推

標(biāo)簽:六安 淮南 泰安 酒泉 海北 孝感 葫蘆島 宜春

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Oracle基本查詢過濾排序示例解析》,本文關(guān)鍵詞  Oracle,基本,查詢,過濾,排序,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Oracle基本查詢過濾排序示例解析》相關(guān)的同類信息!
  • 本頁收集關(guān)于Oracle基本查詢過濾排序示例解析的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章