Resumo da consulta ao banco de dados

O banco de dados foi construído:

departamento:

emp:

1. Conectar consulta

1. Conexão igual:

[Exemplo 2-27] Consulte o número do funcionário, nome, salário, número do departamento e endereço do funcionário cujo salário é maior ou igual a 3000.

SELECT empno,ename,sal,deptno FROM emp WHERE sal>=3000 ORDER BY deptno;

2. Conecte-se:

[Exemplo 2-28] Consulte o nome do funcionário que trabalha no departamento 21 e o nome do administrador na tabela emp 

 SELECT e.ename 雇员,m.ename 管理员 FROM emp e,emp m WHERE m.empno=e.mgr AND e.deptno=21; 


 Nota: O alias AS pode ser salvo

O resultado:

3. Conexão desigual:

[Exemplo 2-29] As informações sobre a classificação salarial são armazenadas na tabela de classificação e as informações sobre a classificação salarial e salarial do funcionário que trabalha no departamento número 20 são consultadas.

SELECT e.ename,e.sal,s.grade
   FROM emp e,salgrade s
   WHERE e.sal  BETWEEN s.losal  AND s.hisal
    AND e.deptno=20;

 4. Conexão externa esquerda:

DE 表 1 ESQUERDA TER EXTERIOR】 JUNTA 表 2 

            ON Tabela 1. Coluna = Tabela 2. Coluna

SELECT dept.deptno,emp.deptno,ename,empno
   FROM  dept  LEFT JOIN emp
   ON  dept.deptno=emp.deptno
   WHERE dept.deptno=2 OR dept.deptno=3;

O resultado:

Nota: 1.outer pode ser omitido;

      2. Se as informações corretas da tabela não coincidirem, a tabela correta preenche o espaço em branco

Exemplo:

SELECT dept.deptno,emp.deptno,ename,empno
   FROM  dept  LEFT JOIN emp
   ON  dept.deptno=emp.deptno
   WHERE dept.deptno=6 OR dept.deptno=3;

O resultado:

5. Conexão externa direita:

DE 表 1 DIREITA 【EXTERIOR】 JUNTA 表 2

                ON Tabela 1. Coluna = Tabela 2. Coluna

Nota: Se as informações da tabela esquerda não coincidirem, a tabela esquerda preenche o espaço em branco

[Exemplo 2-31] Exemplo.
 

SELECT empno,ename,emp.deptno,dept.deptno
  FROM  emp  RIGHT  OUTER JOIN  dept
  ON  emp.deptno=dept.deptno
  WHERE dept.deptno=2 OR dept.deptno=3;

O resultado:

Segundo, a subconsulta (aninhamento de instrução de seleção)

1. Subconsulta que retorna um único valor:

[Exemplo 2-32] Consulte o ID do funcionário, o nome, o salário e as informações de postagem do mesmo funcionário que o trabalho de Draw.

SELECT empno,ename,sal,Job FROM emp WHERE Job='Draw';

[Exemplo 2-33] Consulte informações sobre funcionários cujo salário é maior que o salário médio e a mesma posição que o trabalho de Draw.

SELECT * FROM emp WHERE sal>(SELECT AVG(sal) FROM emp) AND Job='Draw';

SELE : SELECT * FROM emp WHERE sal> AVG (sal) AND Job = 'Draw';

Nota: A função agregada não pode ser seguida diretamente na cláusula where;

2) Subconsulta que retorna vários valores

Ao usar subconsultas com vários valores na cláusula WHERE, você deve usar operadores de comparação com vários valores: [NOT] IN, [NOT] EXISTS, ANY, ALL, onde ALL e ANY devem ser usados ​​em combinação com operadores de comparação.

Subconsulta com valores múltiplos usando o operador IN

[Exemplo 2-34] Consulte as informações de identificação, nome, cargo e salário do funcionário com o salário mais alto, excluindo funcionários com CLERK e PRESIDENT

SELECT Job,MAX(sal) FROM emp GROUP BY Job HAVING Job
NOT IN('Draw','Pant');

Subconsulta com valores múltiplos usando o operador ALL

[Exemplo 2-35] Consulte as informações dos funcionários acima do salário de todos os funcionários do departamento 2.

SELECT * from emp WHERE sal>ALL(SELECT sal FROM emp WHERE deptno=2);

Subconsulta com vários valores usando qualquer operador

[Exemplo 2-36] Consulte as informações dos funcionários acima do salário de qualquer funcionário do departamento 10 .

SELECT * FROM emp WHERE sal>ANY(SELECT sal FROM emp WHERE deptno=2);

Consulta de várias linhas usando o operador EXISTS

[Exemplo 2-37] Consulte informações sobre o nome, número do departamento, salário e cargo de funcionários que trabalham em NOVA IORQUE

SELECT ename,deptno,sal,Job FROM emp WHERE EXISTS(SELECT loc FROM emp WHERE loc='NEW YORK');

Consulta combinada três

A sintaxe do UNION é:

 Instrução SELECT 1

   UNIÃO [TODOS]

 Instrução SELECT 2

SELECT empno,ename,deptno,job FROM emp WHERE job='MANAGER'
UNION 
SELECT empno,ename,deptno,job FROM emp WHERE deptno=10;

 

Publicado 75 artigos originais · elogiado 164 · 110.000 visualizações

Acho que você gosta

Origin blog.csdn.net/qq_41679818/article/details/105538191
Recomendado
Clasificación