Noções básicas de banco de dados de treinamento curto (1)

**

1 Sintaxe para criar uma tabela:

**

CREATE TABLE STUDENT(
    SID NUMBER NOT NULL PRIMARY KEY,
    STUNAME VARCHAR(30) NOT NULL,
    STUAGE NUMBER ,
    ADDRESS VARCHAR(100),
    TEL NUMBER
);

2. Insira informações

INSERT INTO STUDENT(SID,STUNAME,STUAGE,ADDRESS,TEL)VALUES(1,'张三',20,'天津空港',17602684398)

3. Insira as informações especificadas

INSERT INTO STUDNET(SID,STUNAME,TEL)VALUES(2,'李四',82374879328)

4. Consultar informações

SELECT * FROM STUDENT

5. Modifique a tabela

添加列
ALTER TABLE XX ADD(CLASS NUMBER)
修改列
ALTER TABLE 表名 MODIFY(列名VARCHAR(50) )
删除列
ALTER TABLE 表名 DROP(列名)

6. Excluir tabela

DROP TABLE 表名

7. Renomeie a tabela

RENAME 旧表名 TO 新表名

8. linguagem DML

Mesa EMP

Mesa EMP

Mesa DEPT

Mesa DEPT

Linguagem de manipulação de dados INSERT, UPDATE, DELETE

UPDATE 表名 SET 列名 = 新值 WHERE 列名=XXX
DELETE FROM 表名 WHERE 列名 = XXX

Exercício
1. Consulta de posição é o número do funcionário, número do gerente e local de trabalho do SALESMAN.

SELECT EMPNO,MGR,LOC FROM EMP,DEPT WHERE JOB = 'SALESMAN' AND EMP.DEPTNO=DEPT.DEPTNO

2. Consulte o nome e o número do departamento dos funcionários cujo número do departamento não está no departamento 10.

SELECT ENAME,DEPTNO FROM EMP WHERE DEPTNO <> 10

9. Operadores

Conector ||

SELECT ENAME || JOB EMPLY FROM EMP

Elimine linhas duplicadas

SELECT DISTINCT DEPTNO FROM EMP

* Exercício
consulta nome do funcionário salário entre 1000-1500, o número do departamento e salário *

SELECT ENAME DEPTNO,SAL FROM EMP 
WHERE SAL>=1000 AND SAL<=1500 

----------

SELECT ENAME DEPTNO,SAL FROM EMP 
WHERE SAL BETWEEN 1000 AND 1500

Consulte o número, nome e bônus dos funcionários cujos números são 7369 7521 e 7698

SELECT EMPNO,ENAME,COMM FROM EMP
 WHERE EMPNO IN(7369,7521,7698)

Consulte o nome, número, cargo do funcionário cujo nome contém S

SELECT ENAME,EMPNO,JOB FROM EMP 
WHERE ENAME LIKE '%S%'

Consultar nomes de funcionários cujos nomes comecem com W

SELECT ENAME FROM EMP 
WHERE ENAME LIKE 'W%'

Consulte o nome do funcionário cujo penúltimo caractere é T

SELECT ENAME FROM EMP 
WHERE ENAME LIKE '%T_'

Consulte o nome do funcionário cujo bônus está vazio, bônus

SELECT ENAME COMM FROM EMP 
WHERE COMM IS NULL

Consulte o nome, cargo, salário do funcionário cujo salário exceda 2.000, e o cargo seja GERENTE, ou seja VENDEDOR

SELECT ENAME,JOB,SAL FROM EMP 
WHERE SAL > 2000 AND JOB= 'MANAGER' OR JOB = 'SALESMAN'

Consulte o nome, o cargo e o salário dos funcionários cujo salário exceda 2.000 e cuja posição seja GERENTE ou VENDEDOR

S1ELECT ENAME,JOB,SAL FROM EMP 
WHERE SAL >2000 AND JOB IN ('MANAGER','SALESMAN')

Consulte o nome, departamento e salário dos funcionários cujo departamento é 10 ou 20 e cujo salário está entre 3.000 e 5.000

SELECT ENAME,DEPTNO,SAL FROM EMP 
WHERE DEPTNO IN (10,20) AND SAL BETWEEN 3000 AND 5000

A posição da consulta é SALESMAN ou MANAGER, o número do departamento é 10 ou 20 e o nome contém o nome, cargo, número do departamento do funcionário

SELECT ENAME,JOB,DEPTNO FROM EMP 
WHERE JOB IN ('SALESMAN','MANAGER') AND DEPTNO IN (10,20) AND ENAME LIKE '%A%'

Consulte o nome e o número do departamento de funcionários cujo departamento é 20 ou 30 e classifique-os em ordem crescente de salário

SELECT ENAME,DEPTNO,SAL FROM EMP 
WHERE DEPTNO IN (20,30) ORDER BY SAL

Consulte o nome, o número do departamento e o salário dos funcionários cujo salário está entre 2.000 e 3.000 e o departamento não é o número 10 e classifique-os em ordem crescente por departamento e salário decrescente

SELECT ENAME,DEPTNO,SAL FROM EMP 
WHERE SAL BETWEEN 2000 AND 3000 AND DEPTNO <> 10 ORDER BY DEPTNO,SAL DESC

10. Links externos (+)

Consultar todos os nomes de funcionários, números de departamentos, nomes de departamentos, incluindo departamentos sem funcionários também devem ser exibidos

SELECT ENAME,E.DEPTNO ,DNAME FROM EMP E ,DEPT D WHERE E.DEPTNO(+) = D.DEPTNO

11. Auto-conexão

Consulte o nome de cada funcionário e o nome do superior imediato

SELECT E.ENAME 员工姓名,M.ENAME 经理姓名 FROM EMP E ,EMP M WHERE E.MGR = M.EMPNO

* Exercício
1. Consulte os nomes e números de funcionários de todos os funcionários que trabalham em NEWYORK e CHICAGO, bem como os nomes e números de gerentes *

SELECTE E.ENAME 员工姓名,E.EMPNO 员工编号,M.ENAME 经理姓名 ,M.EMPNO 经理编号,LOC FROM EMP E,EMP M,DEPT D 
WHERE E.DEPTNO = D.DEPTNO AND E.MGR = M.EMPNO AND LOC IN ('NEWYORK' , 'CHICAGO')

2. Com base na pergunta anterior, adicione o funcionário King sem um gerente e classifique pelo número do funcionário

SELECTE E.ENAME 员工姓名,E.EMPNO 员工编号,M.ENAME 经理姓名 ,M.EMPMO 经理编号,LOC FROM EMP E,EMP M,DEPT D 
WHERE E.DEPTNO = D.DEPTNO AND E.MGR = M.EMPNO(+) AND LOC IN ('NEWYORK' , 'CHICAGO') ORDER BY E.EMPNO

3. Consulte todos os números de funcionários, nomes e nomes de departamentos, incluindo funcionários sem departamentos, e exiba-os
.

12. Produto cartesiano

Consultar nome, número, local de trabalho do funcionário

SELECT ENAME,EMPNO,LOC FROM EMP,DEPT 
WHERE EMP.DEPTNO = DEPT.DEPTNO

13. Cross join (o produto de duas tabelas) cross join

SELECT ENAME,EMPNO,LOC FROM EMP CROSS JOIN DEPT

14. junção NATURAL

SELECT ENAME,EMPNO,LOC FROM EMP NATURAL JOIN DEPT

15. A cláusula de uso especifica as condições de conexão

Consulte o nome, o nome do departamento e o salário do funcionário cujo número de departamento é 20

SELECT ENAME,DNAME,SAL FROM EMP 
JOIN DEPT USING(DEPTNO) 
WHERE DEPTNO = 20

16. A cláusula on especifica as condições de conexão

SELECT ENAME,DNAME,LOC FROM EMP 
JOIN DEPT ON EMP.DEPTNO=DEPT.DEPTNO 
WHERE EMP.DEPTNO = 20

Exercício
1. Use a cláusula using para exibir os nomes, nomes dos departamentos e locais de trabalho dos funcionários que trabalham em CHICAGO

SELECT ENAME,DNAME,LOC FROM EMP 
JOIN DEPT USING(DEPTNO) 
WHERE LOC = 'CHICAGO'

2. Use a cláusula On para exibir o nome do funcionário que trabalha em CHICAGO, o nome do departamento, a localização e o nível de salário

SELECT ENAME,DNAME,LOC FROM EMP 
JOIN DEPT ON EMP.DEPTNO = DEPT.DEPTNO 
WHERE LOC = 'CHICAGO'

3. Use o link da esquerda para consultar o nome de cada funcionário, o nome do gerente e o KING sem gerente também deve ser exibido

SELECT E.ENAME,M.ENAME FROM EMP E 
LEFT OUTER JOIN EMP M ON E.MGR = M.EMPNO

4. Use o link correto para consultar o nome de cada funcionário, o nome do gerente e KING sem gerente também deve ser exibido

SELECT E.ENAME,M.ENAME FROM EMP E 
RIGHT OUTER JOIN EMP M ON E.MGR = M.EMPNO

17. Lição de casa

1. Exibe o nome do funcionário SMITH, o nome do departamento e o nome do superior imediato

SELECT E.ENAME,DNAME,M.ENAME FROM EMP E,EMP M, DEPT D 
WHERE E.MGR = M.EMPNO AND E.DEPTNO = D.DEPTNO AND E.ENAME = 'SMITH'

2. Exiba os nomes dos funcionários e seus gerentes gerenciados pela KING e FORD.

SELECT E.ENAME , M.ENAME FROM EMP E,EMP M 
WHERE E.MGR = M.EMPNO AND (M.ENAME = 'KING' OR M.ENAME = 'FORD')

3. Consulte o nome do funcionário cuja terceira letra é a.

SELECT ENAME FROM EMP 
WHERE ENAME LIKE '__A%'

4. Consulte os nomes e números de departamento dos funcionários, exceto para os departamentos 10 e 20.

SELECT ENAME,DEPTNO FROM EMP 
WHERE DEPTNO <> 10 AND DEPTNO <> 20

5. Consulte as informações do funcionário com número de departamento 30, primeiro classifique por salário em ordem decrescente e, em seguida, classifique por nome em ordem crescente.

SELECT ENAME,DEPTNO,SAL FROM EMP 
WHERE DEPTNO =30 
ORDER BY SAL DESC,ENAME ASC

6. Consulte os nomes dos funcionários sem chefes (o número do gerente está vazio).

SELECT ENAME FROM EMP 
WHERE MGR IS NULL

7. Consulte o nome, salário e número do departamento dos funcionários cujo salário é maior ou igual a 4500 e cujo departamento é 10 ou 20.

SELECT ENAME,SAL,DEPTNO FROM EMP 
WHERE SAL >= 4500 AND DEPTNO IN (10,20);

8. Escreva uma consulta para exibir todos os nomes de funcionários, números de departamentos e nomes de departamentos.

SELECT ENAME,DEPTNO,DNAME FROM EMP,DEPT AND EMP.DEPTNO = DEPT.DEPTNO

9. Escreva uma consulta para mostrar os nomes, locais de trabalho e bônus de todos os funcionários que trabalham em CHICAGO e cujo bônus não está vazio

SELECT E.ENAME,LOC,E.COMM FROM EMP,DEPT 
WHERE EMP.COMM<>0 AND DEPT.DEPTNO=EMP.DEPTNO

10. Escreva uma consulta para exibir os nomes e locais de trabalho de todos os funcionários cujos nomes contenham caracteres A.

SELECT E.ENAME,LOC FROM EMP 
JOIN DEPT ON DEPT.DEPTNO = EMP.DEPTNO 
WHERE EMP.ENAME LIKE '%A%'

6/09/2017

Acho que você gosta

Origin blog.csdn.net/geekerstar/article/details/77885460
Recomendado
Clasificación