Professional Documents
Culture Documents
Objetivos
Enumerar las capacidades de las sentencias SQL SELECT Ejecutar una sentencia SELECT bsica
checarlitosssss@yahoo.com.pe
AGENDA
Comandos Capacidades de las Sentencias SQL SELECT Expresiones Aritmticas Mejora de visualizacin de consultas Uso de la clausula WHERE Otras Condiciones de Comparacin Condiciones Lgicas Reglas de Prioridad Clusula ORDER BY Resumen Fin
Ing. Carlos Parra Terrazos
SELECT FROM
04/05/2012
SQL*Plus:
Las cabeceras de la columna de fecha y carcter estn justificadas a la izquierda Las cabeceras de columna de nmero estn justificadas a la derecha Visualizacin de cabecera por defecto: 10 Maysculas Ing. Carlos Parra Terrazos
Expresiones Aritmticas
Cree expresiones con datos de nmero y fecha mediante operadores aritmticos.
Operador + * / Descripcin Suma Resta Multiplicacin Divisin
11
12
04/05/2012
Prioridad de Operador
_ * / +
La multiplicacin y la divisin tienen prioridad sobre la suma y la resta. Los operadores de idntica prioridad se evalan de izquierda a derecha. Los parntesis se utilizan para forzar evaluaciones prioritarias y para clarificar sentencias.
Ing. Carlos Parra Terrazos
Prioridad de Operador
SELECT last_name, salary, 12*salary+100 FROM employees;
13
14
Uso de Parntesis
SELECT last_name, salary, 12*(salary+100) FROM employees;
15
16
Ing. Carlos Parra Terrazos
17
Ing. Carlos Parra Terrazos
18
04/05/2012
19
Ing. Carlos Parra Terrazos
20
Operador de Concatenacin
Un operador de concatenacin: Concatena columnas o cadenas de caracteres a otras columnas. Est representado por dos barras verticales (||). Crea una columna resultante que es una expresin de caracteres.
21
22
23
24
04/05/2012
Filas Duplicadas
La visualizacin por defecto de las consultas son todas las filas, incluidas las filas duplicadas.
SELECT department_id FROM employees;
25
26
104 Ernst IT_PROG 107 Lorentz IT_PROG recuperar124 Mourgos todos los empleados ST_MAN
del departamento 90
EMPLOYEE_I LAST_NAME JOB_ID D 100 King AD_PRES 101 Kochhar AD_VP 102 De Haan Ing. Carlos Parra Terrazos AD_VP
28
DEPARTMENT_ID 90 90 90
29
30
04/05/2012
Condiciones de Comparacin
Operador = > >= < <= <> Significado Igual que Mayor que Mayor o igual que Menor que Menor o igual que No igual a
31
32
La Condicin BETWEEN
Usamos la condicin BETWEEN para mostrar filas incluidas en un rango de valores.
SELECT last_name, salary FROM employees WHERE salary BETWEEN 2500 AND 3500 ; Lmite inferior
LAST_NAME Rajs Davies Matos Vargas
33
Ing. Carlos Parra Terrazos
Coincide con cualquiera de una lista de valores Coincide con un patrn de caracteres Es un valor nulo
Lmite superior
SALARY 3500 3100 2600 2500
34
La Condicin IN
Usaremos la condicin IN de pertenencia para comprobar si hay valores en una lista.
SELECT employee_id, last_name, salary, manager_id FROM employees WHERE manager_id IN (100, 101, 201) ;
EMPLOYEE_I D 202 200 205 101 102 124 149 201 LAST_NAME Fay Whalen Higgins Kochhar De Haan Mourgos Zlotkey Harstein SALARY 6000 4400 12000 17000 17000 5800 10500 13000 MANAGER_ID 201 101 101 100 100 100 100 35 100
La Condicin LIKE
Empleamos la condicin LIKE para realizar bsquedas con comodines de valores vlidos de la cadena de bsqueda. Las condiciones de bsqueda pueden contener caracteres literales o nmeros:
% indica cero o muchos caracteres. _ indica un carcter.
SELECT first_name FROM employees WHERE first_name LIKE S% ;
Ing. Carlos Parra Terrazos
36
04/05/2012
Tambin podemos emplear el identificador ESCAPE para buscar los smbolos % y _ reales.
Ing. Carlos Parra Terrazos
37
38
Condiciones Lgicas
Operador Significado Devuelve TRUE si las dos AND condiciones componentes son verdaderas OR Devuelve TRUE si alguna de las condiciones componentes es verdadera Devuelve TRUE si la siguiente condicin es falsa
El Operador AND
AND requiere que las dos condiciones sean
verdaderas.
SELECT employee_id, last_name, job_id, salary FROM employees WHERE salary >=10000 AND job_id LIKE '%MAN%' ;
NOT
39
El Operador OR
OR requiere que una de las condiciones sea verdadera.
SELECT employee_id, last_name, job_id, salary FROM employees WHERE salary >= 10000 OR job_id LIKE '%MAN%' ;
EMPLOYEE_I D 100 101 102 124 149 174 201 205 LAST_NAME King Kochhar De Haan Mourgos Zlotkey Abel Harstein Higgins JOB_ID SALARY 24000 17000 17000 5800 10500 11000 13000 41 12000 AD_PRES AD_VP AD_VP ST_MAN SA_MAN SA_REP MK_MAN Ing. Carlos Parra Terrazos AC_MGR
El Operador NOT
SELECT last_name, job_id FROM employees WHERE job_id NOT IN ('IT_PROG', 'ST_CLERK', 'SA_REP') ;
LAST_NAME King Kochhar De Haan Mourgos Zlotkey Whalen Harstein Fay Higgins Gietz JOB_ID AD_PRES AD_VP AD_VP ST_MAN SA_MAN AD_ASST MK_MAN MK_REP AC_MGR AC_ACCOUNT Ing. Carlos Parra Terrazos
42
04/05/2012
Reglas de Prioridad
Orden de Evaluacin 1 2 3 4 5 6 7 8 Operador Operadores aritmticos Operador de concatenacin Condiciones de comparacin IS [NOT] NULL, LIKE, [NOT] IN [NOT] BETWEEN Condicin Lgica NOT Condicin Lgica AND Condicin Lgica OR
Reglas de Prioridad
SELECT last_name, job_id, salary FROM employees WHERE job_id = 'SA_REP' OR job_id = 'AD_PRES' AND salary > 15000;
LAST_NAME King Abel Taylor Grant
43
Reglas de Prioridad
Debemos Utilizar parntesis para forzar la prioridad.
SELECT last_name, job_id, salary FROM employees WHERE (job_id = 'SA_REP' OR job_id = 'AD_PRES') AND salary > 15000;
LAST_NAME King JOB_ID AD_PRES SALARY 24000
Clusula ORDER BY
Ordenamos filas con la clusula ORDER BY
ASC: orden ascendente, por defecto DESC: orden descendente
45
46
47
04/05/2012
Resumen
En la clase hemos aprendido a: Utilizar el entorno iSQL*Plus para escribir, guardar y ejecutar sentencias SQL y comandos iSQL*Plus.
50
51