CONSULTAS SQL
1
Seleccionar
CONSULTAS SQL
Ingresar
Actualizar
Eliminar
2
SELECCIONAR DATOS
3
LA UTILIZACIÓN DE *
Se utiliza el * para indicar todas las columnas de la tabla.
SELECT * FROM proyecto
4
COLUMNAS DE LA TABLA DE ORIGEN
La lista de columnas que deseamos observar será la lista
de selección de la instrucción, esta se debe especificar
delante de la clausula FROM.
SELECT #cod, descrp, localidad, cliente FROM proyecto
Columnas Tabla
5
ALIAS DE COLUMNA
Cuando obtenemos un resultado de una consulta,
normalmente las columnas toman el nombre que posee
la columna en la tabla. Si deseamos modificar dicho
nombre lo podemos hacer con la instrucción AS.
SELECT Idprovee AS Proveedor FROM productos
Cambio de nombre en
la Columna Tabla
6
EJEMPLOS
SELECT ALL nombre,apellido FROM mitabla
SELECT nombre,apellido FROM mitabla
SELECT DISTINCT nombre FROM mitabla
SELECT nombre,edad FROM mitabla WHERE edad=18
7
OPERADORES
Los siguientes operadores se pueden utilizar para expresar
condiciones de fila (cláusula Where) o de grupo (cláusula
Having)
Ø De comparación (<,<=,>,=>,<>,=)
Ø Lógicos ( AND, OR,NOT)
Ø Between … AND …
Ø LIKE
Ø IN
Ø IS NULL
Ø Cuantificadores (ANY, SOME, ALL)
Ø Existencial (EXISTS)
8
EJEMPLOS
Comparación
SELECT #emp, nombre FROM empleados WHERE ventas >cuota
SELECT oficina FROM oficinas WHERE ventas < objetivo * 0.8
9
EJEMPLOS
Test de Rango (BETWEEN)
SELECT rut, nombre FROM empleados WHERE edad
BETWEEN 20 AND 33
SELECT rut, nombre FROM empleados WHERE (edad >= 20)
AND (edad <= 33)
10
EJEMPLOS
Test de pertenencia a conjunto (IN)
SELECT RUT, nombre FROM empleados WHERE oficina IN
(12,14,16)
SELECT RUT, nombre FROM empleados WHERE (oficina=12) OR
(oficina =14) OR (oficina = 16)
11
CONSULTAS CONDICIONADAS (UNA TABLA)
Para establecer condiciones en el resultado que deseamos
observar, podemos ocupar las sentencia WHERE
Ej. Obtener los códigos de los conductores que son de
Coquimbo.
SELECT #cod FROM Conductores
WHERE localidad =‘Coquimbo’;
12
CONSULTAS CONDICIONADAS (UNA TABLA)
También podemos unir la condición con los operadores
Ej. Obtener los códigos de los conductores de Coquimbo que
tengan categoría inferior a 20.
SELECT #cod FROM Conductores
WHERE localidad =‘Coquimbo’ AND categoría < 20;
13
CONSULTAS CONDICIONADAS (MÁS DE UNA TABLA)
Las consultas las podemos ejecutar sobre más de una tabla.
Ej. Obtener para cada maquina utilizada, el código de máquina
y el nombre.
SELECT DISTINCT trabajos, #maq, nombre
FROM trabajos, maquinas
WHERE trabajos.#maq =maquinas.#maq;
14
FUNCIONES AGREGADAS
Count(*) = contador de tuplas (totalizador)
Count (Distinct) =contador de tuplas (parcial), no toma en cuenta las
tuplas duplicadas o nulas.
AVG= media aritmética de un atributo o una expresión numerica
(promedio).
SUM= Suma de atributos o expresiones numéricas.
MAX= Valor máximo de un atributo o expresión numérica.
MIN= Valor minimo de un atributo o expresión numérica.
Devuelven un valor único, numérico, como resumen de la información
relativa a atributos.
15
EJEMPLOS
Obtener el número total de proyectos realizados
SELECT COUNT(*)
FROM proyectos;
Obtener el número total de maquinas que se han utilizado en ‘Proyecto2’
SELECT COUNT(DISTINCT m#)
FROM trabajos
WHERE p# = ‘Proyecto2’;
16
EJEMPLOS
Obtener el precio medio por hora de las máquinas utilizadas en el proyecto
‘proyecto1’
SELECT AVG(precio_hora)
FROM maquinas
WHERE m# IN
(SELECT m# FROM trabajos WHERE p# = ‘Proyecto 1’);
Obtener el precio total a pagar a los trabajadores del proyecto ‘proyecto3’
SELECT SUM(tiempo * precio_hora)
FROM trabajos, maquinas
WHERE p# = ‘Proyecto3’ AND
trabajos.m# = maquinas.m#; 17
INGRESAR DATOS
18
INSERTAR DATOS A UNA TABLA
Ej. Insertar valores en la tabla PERSONA.
INSERT INTO PERSONA (Nombre,Edad,ColorDePelo,AlturaEnMetros)
VALUES (‘Pedrito’,7,’Negro’,1.1);
INSERT INTO PERSONA
(Edad,ColorDePelo,Nombre,AlturaEnMetros)
VALUES (9,’Negro’,’Carlos’,1.1);
19
BORRAR DATOS
20
BORRAR TUPLAS DE UNA TABLA
DELETE FROM PERSONA WHERE edad > 20
DELETE FROM PERSONA WHERE edad = 9
21
BORRAR TODOS LOS DATOS DE UNA TABLA
DELETE FROM PERSONA
22
BORRAR UNA TABLA
DROP TABLE PERSONA
23
ACTUALIZAR DATOS
24
ACTUALIZAR DATOS DE UNA TABLA
UPDATE PERSONA
SET alturaenmetros = 1.8
WHERE nombre = 'Diego’
UPDATE PERSONA
SET alturaenmetros = 1.4, edad = 11, colordepelo = 'AMARILLO’
WHERE nombre = 'Diego'
25
ACTUALIZAR DATOS DE UNA TABLA
UPDATE PERSONA
SET alturaenmetros = 1, colordepelo = 'AMARILLO’
WHERE edad > 0
UPDATE PERSONA
SET alturaenmetros = 1, colordepelo = 'AMARILLO'
WHERE edad > 0 OR alturaenmetros < 0.9
UPDATE PERSONA
SET edad = 12
WHERE edad > 8
UPDATE PERSONA
SET edad = edad + 3
WHERE edad > 8
26
PRÁCTICA
Consultas a la base de datos
27
[Link]
28