Escolar Documentos
Profissional Documentos
Cultura Documentos
Qu es una Consulta?
Una consulta es un pregunta que realizas a tu base de datos. Ud. puede:
Desplegar datos desde multiples tablas Decidir que campos desplegar. Efectuar calculos sobre los valores de los campos Grabar una consulta automticamente.
CPA 506 Gestin 2012
Ejemplo de Consulta
Note que los nombres de tablas empiezan con una mayscula.
Ejemplo de Consulta
Note que los nombres de tablas empiezan con una mayscula.
Select, *, y from son palabras y smbolos reservados (clave) que tienen un significado especial en SQL Despus de la palabra from, si en el SQL se tiene la palabra Empleados, se asume que esto es el nombre de la tabla.
Cadenas
where nombre_empleado = Juan Perez
Despus de la palabra clave where, SQL asume que la palabra nombre_empleado es el nombre del campo (columna)
Juan Perez es una cadena Una cadena es una secuencia de simbolos ASCII encerrados por simples o dobles comillas el cual denota un valor.
CPA 506 Gestin 2012
Ejemplo de Consulta
Ejemplo de Consulta
10
<=
<> LIKE
>=
BETWEEN (entre)
IS NULL IN
11
Operador LIKE
LIKE verifica la correspondencia con un patrn, Si olvida el nombre de un empleado y lo nico que recuerda que empieza con J, podria ser quiza Juan, Jose o Javier. Puede utilizar el test de correspondencia con un patrn para recuperar los datos en base a correspondencia parcial del nombre del empleado. SELECT * FROM Empleados WHERE Nombre LIKE J%
CPA 506 Gestin 2012
12
Ejemplo de Consulta
13
14
Ejemplo de Consulta
15
16
Ejemplo de Consulta
17
Ejemplo de Consulta
18
Ejemplo de Consulta
19
20
Ejemplo de Consulta
21
Operadores Lgicos
AND OR condicin (solamente con ambas) condicin (con una o la otra)
Selecciona registros con valores distintos a La Paz. SELECT * FROM Empleados WHERE NOT(Ciudad = La Paz)
CPA 506 Gestin 2012
22
Ejemplo de Consulta
23
Ejemplo de Consulta
24
Ejemplo de Consulta
25
Ejemplo de Consulta
26
Ejemplo: No realizar esto!!!!! SELECT * FROM Empleados WHERE Nombre = Juan OR Jose
Nota: Repita el campo Nombre cada vez quiza sea esto un inconveniente- porque la consulta se EJECUTAR, pero los resultados estarn EQUIVOCADOS!
27
Orden de precedencia:
Cuando ms de un operador lgico es utilizado en una consulta, NOT es evaluado primero luego AND y finalmente OR
Para que usted est seguro que la sentencia introducida sea la correcta, utilice parentesis!
28
Ejemplo:
SELECT * FROM Empleados WHERE Sueldo < 2000 OR Sueldo > 3000 AND Ciudad = La Paz
SELECT * FROM Empleados WHERE (Sueldo < 2000 OR Sueldo > 3000) AND Ciudad = La Paz
29
Operador BETWEEN
BETWEEN verifica si los datos se encuentran dentro un rango. SELECT * FROM Empleados WHERE Sueldo BETWEEN 2000 AND 4000 lo anterior es equivalente a SELECT * FROM Empleado WHERE 2000 <= Sueldo AND Sueldo <= 4000
CPA 506 Gestin 2012
30
Ejemplo de Consulta
31
Operador IN
IN toma una lista de valores separadas por comas, SELECT * FROM Empleados WHERE Ciudad IN (La Paz, Tarija)
lo anterior es equivalente a
SELECT * FROM Empleados WHERE Ciudad = La Paz OR Ciudad = Tarija
CPA 506 Gestin 2012
32
Ejemplo de Consulta
33
Relacin de tablas
34
35
Ejemplo
36
Producto cartesiano (A x B)
Dado:
A = {1, 2, 3, 4} y B = {a, b}
Entonces:
A B = {(1, a), (1, b), (2, a), (2, b), (3, a), (3, b), (4, a), (4, b)}
37
Producto Cartesiano Une todas las posibles combinaciones de los registros de las tablas
38
39
Ejemplo de Consulta
Utilice WHERE para seleccionar (filtrar) los registros del producto cartesiano
CPA 506 Gestin 2012
40
Ejemplo de Consulta
Si dos tablas tienen el mismo nombre de campo tal como ProveedorID se tiene que especificar el nombre de la tabla por delante.
CPA 506 Gestin 2012
41
Ejemplo de Consulta
42
43
Ejemplo de Consulta
44
Ejemplo
45
Ejemplo de Consulta
46
Ejemplo de Consulta
47
Campos calculados
AS establece un alias para un valor calculado.
48
Ejemplo de Consulta
49
En resumen
Cmo respondemos a las siguientes preguntas? Qu es un SELECT? Qu es un FROM? Qu es un WHERE? Qu es un campo calculado?
50