使用sqlplus工具鏈接到本身的用戶完成下面練習
1.顯示登錄用戶是哪一個?
SQL> show user
USER is "SCOTT"
2.顯示當前用戶有哪些對象?
SQL> desc user_objects;
SQL> select OBJECT_NAME,OBJECT_TYPE from user_objects;
3.顯示當前用戶有哪些表?
SQL> desc user_tables;
SQL>select * from tab; 或 select * from user_tables;
4.描述這些表的結構,瞭解列的含義
deac 表名 //查看錶的結構
TNAME TABTYPE CLUSTERID
------------------------------ ------- ----------
BONUS TABLE
DEPT TABLE
EMP TABLE
SALGRADE TABLE
5.顯示員工表全部信息
select * from EMP;
6.顯示員工名字,月薪
select ENAME,SAL from EMP;
7.顯示員工名字,職位,入職時間,月薪,查看不一樣類型列數據如何對齊的。
SQL> select ENAME,JOB,HIREDATE,SAL from EMP;
對齊方式,除了最後一列是右對齊,其他列都是左對齊
8.顯示員工名字,月薪,獎金
SQL> select ENAME,SAL,COMM from EMP;
9.顯示員工名字,月薪,獎金,總月薪,給總月薪列定義一個新列名total_sal
SQL> select ENAME,COMM,SAL+nvl(COMM,0) as "tatal_sal" from EMP;
10.顯示員工名字,部門編號,年薪,給年薪定義個列名
SQL> select ENAME,EMPNO ,(nvl(COMM,0)+SAL)*12 as "year_sal" from EMP;
11.顯示員工全部惟一部門編號信息
SQL> select distinct ( DEPTNO) from EMP ;
12.顯示員工名字,職位[名字與職位之間用逗號和空格分割開]
SQL> select ENAME||' ,'||JOB from EMP;
13.顯示員工名字,職位[名字與職位之間增長 is work 顯示內容]
SQL> select ENAME||' is work '||JOB from EMP;
14.顯示員工名字,職位[名字與職位之間增長 ‘s work 顯示內容]
select ENAME||q'('s work)'||JOB from EMP;
15.顯示員工編號爲7788的員工名字
SQL> select ENAME from EMP where EMPNO=7788;
16.顯示員工名字爲FORD的職位,月薪
SQL> select JOB,SAL from EMP where ENAME='FORD';
17.顯示員工入職時間爲01-MAY-81的員工名字,員工年薪
SQL> select ENAME,(nvl(COMM,0)+SAL)*12 as "year_sal" from EMP where
HIREDATE='01-MAY-81';
18.顯示員工月薪爲3000的員工名字,月薪
SQL> select ENAME ,SAL from EMP where SAL=3000;
19.顯示員工月薪不是3000的員工名字,月薪
SQL> select ENAME ,SAL from EMP where SAL <>|^= |!= 3000;三種方式均可以
20.顯示員工月薪大於2800的員工名字,月薪
SQL> select ENAME ,SAL from EMP where SAL>2800;
21.顯示員工月薪不大於2800的員工名字,月薪
SQL> select ENAME ,SAL from EMP where SAL<=2800;
22.顯示員工月薪3000和5000的員工名字,月薪
SQL> select ENAME ,SAL from EMP where SAL in( 3000 , 5000);
23.顯示員工月薪不是3000和不是5000的員工名字,月薪
SQL> select ENAME ,SAL from EMP where SAL not in ( 3000 and 5000);
24.顯示員工月薪2000到3000之間的員工名字,月薪
SQL> select ENAME ,SAL from EMP where SAL between 2000 and 3000;
25.顯示員工月薪非2000到3000之間的員工名字,月薪
SQL> select ENAME ,SAL from EMP where SAL not between 2000 and 3000;
26.顯示員工獎金爲空的員工名字,月薪,獎金使用sqlplus工具鏈接到本身的用戶完成下面練習
1.顯示登錄用戶是哪一個?
SQL> show user
USER is "SCOTT"
2.顯示當前用戶有哪些對象?
SQL> desc user_objects;
SQL> select OBJECT_NAME,OBJECT_TYPE from user_objects;
3.顯示當前用戶有哪些表?
SQL> desc user_tables;
SQL>select * from tab; 或 select * from user_tables;
4.描述這些表的結構,瞭解列的含義
deac 表名 //查看錶的結構
TNAME TABTYPE CLUSTERID
------------------------------ ------- ----------
BONUS TABLE
DEPT TABLE
EMP TABLE
SALGRADE TABLE
5.顯示員工表全部信息
select * from EMP;
6.顯示員工名字,月薪
select ENAME,SAL from EMP;
7.顯示員工名字,職位,入職時間,月薪,查看不一樣類型列數據如何對齊的。
SQL> select ENAME,JOB,HIREDATE,SAL from EMP;
對齊方式,除了最後一列是右對齊,其他列都是左對齊
8.顯示員工名字,月薪,獎金
SQL> select ENAME,SAL,COMM from EMP;
9.顯示員工名字,月薪,獎金,總月薪,給總月薪列定義一個新列名total_sal
SQL> select ENAME,COMM,SAL+nvl(COMM,0) as "tatal_sal" from EMP;
10.顯示員工名字,部門編號,年薪,給年薪定義個列名
SQL> select ENAME,EMPNO ,(nvl(COMM,0)+SAL)*12 as "year_sal" from EMP;
11.顯示員工全部惟一部門編號信息
SQL> select distinct ( DEPTNO) from EMP ;
12.顯示員工名字,職位[名字與職位之間用逗號和空格分割開]
SQL> select ENAME||' ,'||JOB from EMP;
13.顯示員工名字,職位[名字與職位之間增長 is work 顯示內容]
SQL> select ENAME||' is work '||JOB from EMP;
14.顯示員工名字,職位[名字與職位之間增長 ‘s work 顯示內容]
select ENAME||q'('s work)'||JOB from EMP;
15.顯示員工編號爲7788的員工名字
SQL> select ENAME from EMP where EMPNO=7788;
16.顯示員工名字爲FORD的職位,月薪
SQL> select JOB,SAL from EMP where ENAME='FORD';
17.顯示員工入職時間爲01-MAY-81的員工名字,員工年薪
SQL> select ENAME,(nvl(COMM,0)+SAL)*12 as "year_sal" from EMP where
HIREDATE='01-MAY-81';
18.顯示員工月薪爲3000的員工名字,月薪
SQL> select ENAME ,SAL from EMP where SAL=3000;
19.顯示員工月薪不是3000的員工名字,月薪
SQL> select ENAME ,SAL from EMP where SAL <>|^= |!= 3000;三種方式均可以
20.顯示員工月薪大於2800的員工名字,月薪
SQL> select ENAME ,SAL from EMP where SAL>2800;
21.顯示員工月薪不大於2800的員工名字,月薪
SQL> select ENAME ,SAL from EMP where SAL<=2800;
22.顯示員工月薪3000和5000的員工名字,月薪
SQL> select ENAME ,SAL from EMP where SAL in( 3000 , 5000);
23.顯示員工月薪不是3000和不是5000的員工名字,月薪
SQL> select ENAME ,SAL from EMP where SAL not in ( 3000 and 5000);
24.顯示員工月薪2000到3000之間的員工名字,月薪
SQL> select ENAME ,SAL from EMP where SAL between 2000 and 3000;
25.顯示員工月薪非2000到3000之間的員工名字,月薪
SQL> select ENAME ,SAL from EMP where SAL not between 2000 and 3000;
26.顯示員工獎金爲空的員工名字,月薪,獎金
SQL> select ENAME,SAL,COMM from EMP where COMM is null;
27.顯示員工獎金不爲空的員工名字,月薪,獎金
SQL> select ENAME,SAL,COMM from EMP where COMM is not null;
28.顯示員工有獎金的員工名字,月薪,獎金
SQL> select ENAME,SAL,COMM from EMP where COMM is not null and COMM>0;
29.顯示員工名字是A開頭的員工名字,職位
SQL> select ENAME,JOB from EMP where ENAME like 'A%';
30.顯示員工名字第三個字符是A的員工名字,職位
SQL> select ENAME,JOB from EMP where ENAME like '__A%';
31.顯示員工名字T結尾的員工名字,職位
SQL> select ENAME,JOB from EMP where ENAME like '%T';
32.顯示員工月薪大於2000且部門編號小於30的員工名字,部門編號,月薪
SQL> select ENAME,EMPNO,SAL from EMP where SAL>2000 and DEPTNO<30;
33.顯示員工月薪大於2000且部門編號等於10的員工名字,部門編號,月薪
SQL> select ENAME,EMPNO,SAL from EMP where SAL>2000 and DEPTNO=10;
34.顯示員工月薪大於2000或部門編號等於10的員工名字,部門編號,月薪
SQL> select ENAME,EMPNO,SAL from EMP where SAL>2000 or DEPTNO=10;
35.顯示員工職位是CLERK和SALESMAN,且月薪大於1280的員工名字,職位,月薪
SQL> select ENAME,EMPNO,SAL from EMP where SAL>1280 and JOB in
('CLERK','SALESMAN');
36.顯示員工全部信息,且薪水從高到底顯示
SQL> select * from EMP order by SAL desc;
37.顯示員工全部信息,且部門編號從低到高,薪水從高到底顯示
SQL> select * from EMP order by SAL DESC,DEPTNO ASC;
38.顯示員工名字,薪水,獎金,獎金從低到高顯示
SQL> select ENAME,SAL,nvl(COMM,0) from EMP order by nvl(COMM,0);
39.顯示員工名字,薪水,獎金,獎金從低到高顯示其中null在前
SQL> select ENAME,SAL,COMM from EMP order by nvl(COMM,-1);
SQL> select ENAME,SAL,COMM from EMP order by COMM first;
40.顯示員工名字,薪水,獎金,獎金從高到低顯示其中null在後
SQL> select ENAME,SAL,COMM from EMP order by nvl(COMM,-1) desc;
SQL> select ENAME,SAL,COMM from EMP order by COMM desc last;
SQL> select ENAME,SAL,COMM from EMP where COMM is null;
27.顯示員工獎金不爲空的員工名字,月薪,獎金
SQL> select ENAME,SAL,COMM from EMP where COMM is not null;
28.顯示員工有獎金的員工名字,月薪,獎金
SQL> select ENAME,SAL,COMM from EMP where COMM is not null and COMM>0;
29.顯示員工名字是A開頭的員工名字,職位
SQL> select ENAME,JOB from EMP where ENAME like 'A%';
30.顯示員工名字第三個字符是A的員工名字,職位
SQL> select ENAME,JOB from EMP where ENAME like '__A%';
31.顯示員工名字T結尾的員工名字,職位
SQL> select ENAME,JOB from EMP where ENAME like '%T';
32.顯示員工月薪大於2000且部門編號小於30的員工名字,部門編號,月薪
SQL> select ENAME,EMPNO,SAL from EMP where SAL>2000 and DEPTNO<30;
33.顯示員工月薪大於2000且部門編號等於10的員工名字,部門編號,月薪
SQL> select ENAME,EMPNO,SAL from EMP where SAL>2000 and DEPTNO=10;
34.顯示員工月薪大於2000或部門編號等於10的員工名字,部門編號,月薪
SQL> select ENAME,EMPNO,SAL from EMP where SAL>2000 or DEPTNO=10;
35.顯示員工職位是CLERK和SALESMAN,且月薪大於1280的員工名字,職位,月薪
SQL> select ENAME,EMPNO,SAL from EMP where SAL>1280 and JOB in
('CLERK','SALESMAN');
36.顯示員工全部信息,且薪水從高到底顯示
SQL> select * from EMP order by SAL desc;
37.顯示員工全部信息,且部門編號從低到高,薪水從高到底顯示
SQL> select * from EMP order by SAL DESC,DEPTNO ASC;
38.顯示員工名字,薪水,獎金,獎金從低到高顯示
SQL> select ENAME,SAL,nvl(COMM,0) from EMP order by nvl(COMM,0);
39.顯示員工名字,薪水,獎金,獎金從低到高顯示其中null在前
SQL> select ENAME,SAL,COMM from EMP order by nvl(COMM,-1);
SQL> select ENAME,SAL,COMM from EMP order by COMM first;
40.顯示員工名字,薪水,獎金,獎金從高到低顯示其中null在後
SQL> select ENAME,SAL,COMM from EMP order by nvl(COMM,-1) desc;
SQL> select ENAME,SAL,COMM from EMP order by COMM desc last;sql