Oracle常用簡單查詢

2022-01-20 22:22:20 字數 2274 閱讀 1054

選擇部門30中的所有員工

select * from emp where deptno = 30;

列出所有辦事員的姓名、編號和部門編號

select ename,empno,deptno from emp where job = 'clerk';

找出佣金高於薪金的員工

select * from emp  where comm > sal;

找出佣金高於薪金60%的員工

select * from emp  where comm > (0.6)*sal;

找出部門10中所有經理和部門20中所有辦事員的詳細資料

select * from emp where (deptno=10 and job='manager') or (deptno=20 and job='clerk');

找出部門10中所有經理,部門20中所有辦事員,既不是經理又不是辦事員但薪金大於或等於2000的所有員工的詳細資料

select * from emp where (deptno=10 and job='manager') or (deptno=20 and job='clerk')or job not in ('manager','clerk') and sal >=2000;

找出收取佣金的員工的不同工作

select distinct job from emp where comm is not null;

找出不收取佣金或收取的佣金低於100的員工

select * from emp where comm is null or comm < 100;

找出各月倒數第三天受僱的所有員工。

select * from emp where last_day(hiredate)-hiredate=2;

找出早於12年前受僱的員工

select * from emp where months_between(sysdate,hiredate)/12 >=12;

以首字母大寫的方式顯示所有員工的姓名

select initcap(ename) from emp;

顯示正好為5個字元的員工姓名

select ename from emp where length(ename)=5;

顯示不帶有r的員工姓名

select ename from emp where ename not like'%r%';

顯示所有員工的前三個字元

select substr(ename,1,3) from emp ;

顯示所有員工的姓名,用a替換所有a

select replace(ename,'a','a') from emp ;

顯示滿10年服務年限的員工的姓名和受僱日期

select ename ,hiredate from emp where months_between(sysdate,hiredate)/12>=10;

顯示員工的詳細資料,按姓名排序

select * from emp order by ename ;

顯示員工的姓名和受僱日期,根據其服務年限,將最老的員工排在最前面

select ename ,hiredate from emp order by hiredate asc;

顯示所有員工的姓名、工作和薪金,按工作的降序排序,若工作相同按薪金排序

select ename,job,sal from emp order by job desc ,sal;

顯示所有員工姓名、加入公司的年份和月份,按受僱日期所在月排序,若月份相同則將最早年份的員工排在最前面。

select ename,to_char(hiredate,'yyyy/mm') from emp order by to_char(hiredate,'mm'),to_char(hiredate,'yyyy') asc ;

顯示在乙個月為30天的情況所有員工的日薪金,忽略餘數

select  round(sal/30) from emp;

找出在任何年份的2月受聘的所有員工

select * from emp where to_char(hiredate ,'mm')=2 ;

對於每個員工,顯示其加入公司的天數

select ename,round(sysdate-hiredate) emp_date from emp;

以年月日的方式顯示所有員工的服務年限

select ename,to_char(hiredate,'yyyy')||'年'||to_char(hiredate,'mm')||'月'||to_char(hiredate,'dd')||'日'from emp;

Oracle 語句之簡單常用查詢

新增欄位和備註alter table 表名 add col1 varchar2 10 col2 varchar2 10 comment on column 表名.col1 is 欄位1 comment on column 表名.col2 is 欄位2 修改字段alter table 表名 modif...

oracle常用查詢

查詢庫表中大資料量的表 select owner,segment name,sum bytes 1024 1024 m from dba segments where segment type in table index and owner bomc2 group by segment name,...

oracle常用查詢

select from dba users 檢視所有使用者 select from user all tables 查詢當前使用者表空間 select from user source 查詢所有函式和儲存過程 select from v session 檢視當前使用者連線 select from s...