Página Inicial > Estudo, Oracle, Tutorial > Banco de dados Oracle / Fundamentos de SQL – parte 2

Banco de dados Oracle / Fundamentos de SQL – parte 2

Neste post vamos usar a claúsula para restrigir as linhas da saída, usar as condições de comparação, usar as condições BETWEEN, IN LIKE E NULL, usar os operadores lógico AND, OR e NOT. Usar ORDER BY e usar variaveis.

/* Vamos restrigir somente o ID 90, ira ser selecionado */
SELECT employee_id, last_name, job_id, department_id
FROM employees
WHERE department_id = 90;



/* Strings de caracteres e datas. o comando where, ira procurar pelo sobrenome Whalen */
SELECT employee_id, last_name, job_id, department_id
FROM employees
WHERE last_name = ‘Whalen’;

/* Usando condição de comparação, selecionado somente o salario que for menor que 3000 */
SELECT last_name, salary
FROM employees
WHERE salary <3000;


/* Usando a condição between. Tudo que estiver entre ..and..*/
SELECT last_name, salary
FROM employees
WHERE salary BETWEEN 2500 and 3500;

/* usando a condição IN, ira mostrar tudo que estiver entre chaves*/
SELECT employee_id, last_name, salary, manager_id
FROM employees
WHERE manager_id IN (100, 101, 201);

/* Usando a condição Like, utilize para pesquisas com curinga, caso voce não saiba o nome correto, a consulta abaixo irá mostrar tudo que iniciar com S maiusculo */
SELECT first_name
FROM employees
WHERE first_name LIKE ‘S%’;

/* Vc pode combinar caracteres com padrões correspondentes, a consulta abaixo ira mostrar somente os nomes que na segunda posição, terá a letra o */
SELECT last_name
FROM employees
WHERE last_name LIKE ‘_o%’;

/* Usando a condição NULL, um valor null é aquele que não esta disponivel nem designado e nao eh reconhecido ou aplicavel, neste caso só ira mostrar o chefao King */
SELECT last_name, manager_id
FROM employees
WHERE manager_id IS NULL;

/* Usando o operador AND. Este operador exige que as duas condições sejam verdadeiras */
SELECT employee_id, last_name, job_id, salary
FROM employees
WHERE salary >=10000
AND job_id LIKE ‘%MAN%’;

/* Usando o operador OR. O operador exige que uma das condições sejam verdadeiras, no select abaixo, ira restrigir algumas linhas */
SELECT last_name, job_id
FROM employees
WHERE job_id
NOT IN (‘IT_PROG’, ‘ST_CHERK’, ‘SA_REP’);

Regras de precedencia

Operador Significo
1 Operadores aritméticos
2 Operador ded concatenação
3 Condição de comparação
4 IS (NOT) NULL, LIKE, [NOT] IN
5 [NOT] BETWEEN
6 Diferença de
7 condição lógica NOT
8 condição lógica OR
9 condição lógica AND



/* Regras de precedencia – selecione a linha se o funcionário for presidente e o salario seja maior que 15 mil, ou se ele for representante de vendas*/
SELECT last_name, job_id, salary
FROM employees
WHERE job_id = ‘SA_REP’
OR job_id = ‘AD_PRES’
AND salary > ‘15000’;

/* Regras de precedencia – fica assim: selecione a linha se o funcionário for presidente ou representante de vendas e receber mais de 15 mil */
SELECT last_name, job_id, salary
FROM employees
WHERE (job_id = ‘SA_REP’
OR job_id = ‘AD_PRES’)
AND salary > ‘15000’;

/* Usando a clausula ORDER BY, classifique as linhas recuperadas com a clausula.*/
/*ASC: Ordem crescente, é a padrão. DESC: Ordem decrescente */

SELECT last_name, job_id, department_id, hire_date
FROM employees
ORDER BY hire_date;

/* Classificação em ordem decrescente */
SELECT last_name, job_id, department_id, hire_date
FROM employees
ORDER BY hire_date DESC

/* Classificacao por apelido de coluna */
SELECT employee_id, last_name, salary, salary*12 ANUAL
FROM employees
ORDER BY ANUAL;

/* Classificação por várias colunas */
SELECT last_name, department_id, salary
FROM employees
ORDER BY department_id, salary DESC;

/* Variaveis de substituição, use variavel que tenha como prefixo o simbolo & (e comercial), para solicitar um valor ao usuario */
SELECT employee_id, last_name, salary, department_id
FROM employees
WHERE employee_id = &employee_num;


/* Use aspas simples para valores de data e caractere, usei o nome IT_PROG */
SELECT last_name, department_id, salary*12 salario
FROM employees
WHERE job_id = ‘&job_title’


/* especificando nomes de coluna, expressoes e texto*/
SELECT employee_id, last_name, job_id,&column name
FROM employees
WHERE &condition
ORDER BY &order;




/* Usando a variavel de substituicao &&, use o simbolo de E comercial duplo (&&). para reutilizar o valor da vaiavel sem solicitar sempre um valor ao usuario*/
SELECT employee_id, last_name, job_id, &&column_name
FROM employees
ORDER BY &column_name;

/* Usando o comando DEFINE, use o comando DEFINE do iSQL PLUS para criar e designar um valor a uma variavel*/

DEFINE employee_num= 200
SELECT employee_id, last_name, salary, department_id
FROM employees
WHERE employee_id = &employee_num;
UNDEFINE employee_num


/*Usando o comando verify – use o comando verify para alternar a exibição da variavel de substituicao, antes e depois de o iSQL PLUS substituir as variaveis por valores */
SET VERIFY ON
SELECT employee_id, last_name, salary, department_id
FROM employees
WHERE employee_id = &employee_num;

Tags: ,
  1. Nenhum comentário ainda.
  1. Nenhum trackback ainda.