orcal常用函数
SELECT TO_CHAR(sysdate,'YYYY"年"MM"月"fmDD"日" HH24:MI:SS')FROM dual;--月份前帶0,獲得當前系統時間
SELECT TO_CHAR(sysdate,'YYYY"年"fmMM"月"fmDD"日" HH24:MI:SS')FROM dual;--月份前不帶0,獲得當前系統時間
?SELECT ename,sal+NVL(comm,0) sal1 FROM emp;--在新表中出現二列,1.enamel。2.sal1.(相當于把sal+NVL(comm,0)重命名為 sal1)。NVL(comm,0) 函數相當于if語句,if(common==null){sal=sal+0}
SELECT ename,sal+NVL(comm,0) sal1,NVL2(comm,sal+comm,sal) sal2 FROM emp;--NVL2(comm,sal+comm,sal) 相當于if(){}else{}語句。if(comm==null){sal=sal+0}lelse{sal=sal+comm}
SELECT ename, sal+NVL(comm,0) sal1,
NVL2(comm,sal+comm,sal) sal2,
DECODE(to_char(hiredate,'MM'),'
01','一月', '02','二月',
'03','三月','04','四月',
'05','五月','06','六月',
'下半年') mon
FROM emp;--選取雇傭時間的日期類型月份改為字符類型的月份,并重命名為mon
SELECT *
FROM
(SELECT emp.* ,
DENSE_RANK( ) OVER (PARTITION BY deptno ORDER BY sal DESC) DENSE_RANK
FROM emp) e
WHERE DENSE_RANK=2;--查詢所有的信息,先分組,再排序,添加一列DENSE_RANK,DENSE_RANK若有重復,4 4 ?5,再取DENSE_RANK=2的列
--注:partition by 相當于group by?
SELECT * FROM
(SELECT emp.* ,rank() OVER (PARTITION BY deptno ORDER BY sal DESC) r_rank
FROM emp) e WHERE r_rank=2;--查詢所有的信息,先分組,再排序,添加一列?r_rank,DENSE_RANK若有重復,4 4 ?6,再取?r_rank=2的列
--注:?r_rank不加雙引號
SELECT ename "姓名",to_char(ROUND(hiredate,'yyyy'),'YYYY')||'年度' ?"入職年度" FROM emp;--\\為連接符,
SELECT distinct deptno FROM emp;--distinct是唯一的,取所有與的部門編號
SELECT ename,sal from emp
WHERE sal>(SELECT sal FROM emp WHERE upper(ename)='SMITH');--列出薪金比"SMITH"多的所有雇員
SELECT job AS 工作 , MIN(sal) AS 最低薪金
FROM emp
GROUP BY job
HAVING MIN(sal) >1500;--列出各種工作類別的最低薪金,顯示最低薪金大于1500的記錄
SELECT ename AS 雇員姓名,dname AS 部門名稱
FROM dept,emp
WHERE dept.deptno=emp.deptno
AND upper(emp.job)='CLERK';--列出所有“CLERK”(辦事員)的姓名及其部門名稱,upper把工作名轉化為大寫
SELECT *
FROM emp
WHERE hiredate=last_day(hiredate);--找出各月最后一天受雇的所有雇員
CREATE TABLESPACE tp_hrDATAFILE ?'d:\data\tp_hr01.dbf' SIZE 60M;--創建表空間示例
SELECT file_name,tablespace_name,bytes,autoextensible FROM dba_data_files
WHERE tablespace_name='TP_HR';--查看表空間
ALTER DATABASE DATAFILE ?'f:\tp_hr01.dbf' RESIZE 20M;--更改數據文件的大小
ALTER TABLESPACE tp_hr ADD DATAFILE ?'f:\tp_hr01.dbf' SIZE 20M autoextend on;--向表空間內添加數據文件
DROP TABLESPACE tp_hr;--?刪除tp_hr表空間
DROP TABLESPACE tp_hr INCLUDING CONTENTS;--?刪除tp_hr表空間,包含內容
insert into emp values(8002,'ton','lCLERK',6000,to_date('1960/2/2','yyyy/mm/dd'),5000,null,20)--插入數據
?
轉載于:https://www.cnblogs.com/jimorulang/p/5509750.html
《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀總結
- 上一篇: 伊朗海军的新“杀手锏”
- 下一篇: hdu_5701_中位数计数