Breves Conceptos de SQL
-
Upload
joseluispt -
Category
Documents
-
view
12 -
download
0
description
Transcript of Breves Conceptos de SQL
![Page 1: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/1.jpg)
SQL
![Page 2: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/2.jpg)
Esquema de HR
![Page 3: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/3.jpg)
Descripción de Tablas
![Page 4: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/4.jpg)
Recuperación de datos mediante la instrucción SQL SELECT
Esquema Básico
Sintaxis:
Select .- Identifica los columnas que se van a desplegar.
From.- identifica la tabla que contiene los campos.
Column/expression.- Selecciona los nombres de las comunas o expresiones.
DISTINCT.- Suprime duplicados.
Alias.- da un nombre diferente a la columna seleccionada
![Page 5: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/5.jpg)
Selección de todos los Campos
![Page 6: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/6.jpg)
Selección de columnas
![Page 7: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/7.jpg)
Utilizando Operaciones matemáticas
![Page 8: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/8.jpg)
Operador Precedente
![Page 9: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/9.jpg)
Usando Alias
![Page 10: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/10.jpg)
Registros Duplicados
![Page 11: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/11.jpg)
Limitación de las filas del Select
Sintaxis:
Where.- Restringe la consulta para filas que cumplen una condición.
Logical Expression.- Esta definida por nombres de columnas, constantes y operador de comparación. En donde se especifica una combinación de una o más expresiones y Operadores booleanos que retornan un valor verdadero, falso o desconocido
![Page 12: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/12.jpg)
Limitación de las filas del Select
![Page 13: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/13.jpg)
Operadores de comparaciónSintaxis:Where expr operador valor
![Page 14: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/14.jpg)
Comparación de Valores
![Page 15: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/15.jpg)
Operador Between
![Page 16: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/16.jpg)
Operador In
![Page 17: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/17.jpg)
Operador Like
Like se usa para Buscar valores dentro de una cadena de caracteres
![Page 18: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/18.jpg)
Usando la condición NULL
![Page 19: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/19.jpg)
Definición de condiciones usando los operadores lógicos
![Page 20: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/20.jpg)
Utilizando el Operador NOT
El Operador NOT se puede utilizar también con otros operadores SQL, tales como: BETWEEN, LIKE, Y NULL. Ejemplo:
![Page 21: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/21.jpg)
Reglas de Precedencia o orden
Usted puede utilizar perentheses para anular reglas de precedencia.
![Page 22: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/22.jpg)
Reglas de Precedencia
La primera condición es que el Job_id es ‘AD_PRES’ y el salario es mayor que $ 15.000
La segunda condición es job_id es ‘SA_REP’
![Page 23: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/23.jpg)
Reglas de Precedencia
![Page 24: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/24.jpg)
Reglas de Precedencia
La primera condición ejecutada es job_id es 'AD_PRES ' OR 'SA_REP‘.
La segunda condición es que el salario>15,000.
![Page 25: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/25.jpg)
Utilizando la clausula order by
![Page 26: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/26.jpg)
Test
![Page 27: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/27.jpg)
Preguntas
Conjunto de Operaciones para obtener una determinada información de la base de datos.R: ConsultasEn el Modelo E-R adjetivo que define una característica de una entidad.R: atributo
![Page 28: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/28.jpg)
Test
Conjunto de Normas que establecen limitaciones del modelo. Lo que el modelo no puede hacer.R: Restricciones
![Page 29: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/29.jpg)
Test
![Page 30: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/30.jpg)
Test
![Page 31: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/31.jpg)
Restricción de datos en consultas básicas de SQL
![Page 32: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/32.jpg)
Restricción de datos
Limitar las filas recuperadas por una consulta:La cláusula WHERE1.- Los operadores de comparación: =, <=, BETWEEN, IN, LIKE.2.- Utilizando las Condiciones lógicas AND, OR y NOT
![Page 33: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/33.jpg)
Restricción de datos
Limitar filas utilizando una selección:
recuperar todos los empleados
en el departamento 90
![Page 34: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/34.jpg)
Restricción de datos
Restringir las filas recuperadas utilizando la cláusula Where:
Donde:Where.-Restringe la consulta a las filas que cumplen una condición.
logical expression.- Compuesta de nombres de columna, constantes y un operador de comparación. Especifica una combinación de una o más expresiones y operadores booleanos y devuelve un valor de Verdad.
![Page 35: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/35.jpg)
Restricción de datos
![Page 36: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/36.jpg)
Restricción de datos
También puede utilizar el operador BETWEEN en valores de carácter:
![Page 37: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/37.jpg)
Ordenar de datos
Ordenar filas utilizando la cláusula ORDER BY:
![Page 38: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/38.jpg)
Ordenar de datos
Clasificar en orden descendente
Clasificación por alias de columna
![Page 39: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/39.jpg)
Ordenar de datos
Clasificación por usar posición numérica de la columna
La clasificación por varias columnas
![Page 40: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/40.jpg)
Funciones
Restricción de datos
![Page 41: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/41.jpg)
Utilizando Funciones
Las funciones :1.- Reciben argumentos y devolver un valor2.- Retorna un resultado por fila3.- Puede modificar el tipo de datos4.- Acepta argumentos que pueden ser una columna o una expresión5.- Se pueden anidar o combinar.
![Page 42: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/42.jpg)
Funciones Consultas SQL
![Page 43: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/43.jpg)
Funciones de carácter
![Page 44: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/44.jpg)
Funciones de carácter
![Page 45: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/45.jpg)
Funciones de carácter
![Page 46: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/46.jpg)
Funciones numéricas
![Page 47: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/47.jpg)
Funciones numéricas
![Page 48: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/48.jpg)
Funciones numéricas
![Page 49: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/49.jpg)
Funciones numéricas
![Page 50: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/50.jpg)
Funciones
![Page 51: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/51.jpg)
Funciones
Select Sum(total) As suma_pedidos From pedidos
Select Sum(cantidad) as suma_articulos From pedidos Where id_articulo=6
![Page 52: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/52.jpg)
Funciones generales
![Page 53: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/53.jpg)
Funciones de la jerarquizaciónFunciones de una sola fila se pueden anidar a cualquier nivel.Las funciones anidadas se evalúan desde el nivel más profundo al nivel menos profundo.
![Page 54: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/54.jpg)
Funciones de la jerarquización
Result1 = SUBSTR (LAST_NAME, 1, 8)
![Page 55: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/55.jpg)
Uso de las funciones del GrupoLas funciones de grupo operan en conjuntos de filas para dar un resultado por grupo.
![Page 56: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/56.jpg)
Tipos de Funciones de Grupo
![Page 57: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/57.jpg)
Tipos de Funciones de Grupo
![Page 58: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/58.jpg)
Sintaxis
![Page 59: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/59.jpg)
Funciones de Grupo
Puede utilizar AVG y SUM para los datos numéricos.
![Page 60: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/60.jpg)
Uso de la función COUNT
COUNT(*) devuelve el número de filas de una tabla:
COUNT (expr) devuelve el número de filas, valores no nulos de la expr
![Page 61: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/61.jpg)
Formatos de la función COUNTLa función COUNT tiene tres formatos:
COUNT (*) devuelve el número de filas de una tabla que satisfacen los criterios de la sentencia SELECT, incluidas las filas duplicadas y las filas que contienen valores nulos en cualquiera de las columnas. Si una cláusula WHERE se incluye en la instrucción SELECT, COUNT (*) devuelve el número de filas que satisfacen la condición en la cláusula WHERE.
Por el contrario, COUNT (expr) devuelve el número de valores no nulos que están en la columna identificada por expr.
COUNT (DISTINCT expr) devuelve el número de valores únicos, no nulos que están en la columna identificada por expr
![Page 62: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/62.jpg)
Formatos de la función COUNT
![Page 63: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/63.jpg)
Funciones de Grupo y Valores Nulos
Las funciones de grupo ignoran los valores nulos en la columna:
![Page 64: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/64.jpg)
Creación de grupos de datos
![Page 65: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/65.jpg)
Creación de grupos de datos
Puede dividir las filas de una tabla en grupos más pequeños mediante el uso de laCláusula GROUP BY.
![Page 66: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/66.jpg)
Creación de grupos de datos
Todas las columnas de la lista SELECT que no están en funciones de grupo deben estar en la cláusula GROUP BY
![Page 67: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/67.jpg)
Creación de grupos de datos
La columna GROUP BY no tiene que estar en la lista SELECT
![Page 68: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/68.jpg)
Creación de grupos de datos
¿Puede utilizar la función de grupo en la cláusula ORDER BY?SELECT department_id, AVG(salary)
FROMemployees
GROUP BY department_id
ORDER BY AVG(salary);
![Page 69: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/69.jpg)
Consultas ilegales en el uso de funciones de grupo
Cualquier columna o expresión en la lista SELECT que no es una función de agregación deben estar en la cláusula GROUP BY
![Page 70: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/70.jpg)
Consultas ilegales en el uso de funciones de grupo
No se puede utilizar la cláusula WHERE para restringir grupos.Se utiliza la cláusula HAVING para restringir grupos
![Page 71: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/71.jpg)
Consultas ilegales en el uso de funciones de grupo
No se puede utilizar la cláusula WHERE para restringir grupos.Se utiliza la cláusula HAVING para restringir grupos
![Page 72: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/72.jpg)
Restringir los resultados del grupo con la Cláusula HAVING
![Page 73: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/73.jpg)
Restringir los resultados del grupo con la Cláusula HAVING
![Page 74: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/74.jpg)
Funciones anidamiento de grupos
![Page 75: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/75.jpg)
Uso de sub consultas
![Page 76: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/76.jpg)
Sintaxis
Puede colocar la sub consulta en una serie de cláusulas SQL, incluyendo las siguientes:
• Clausula WHERE
• Clausula HAVING
• Clausula FROM
En la sintaxis:operador incluye una condición de comparación como: >, =, o IN.
![Page 77: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/77.jpg)
Ejemplo
![Page 78: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/78.jpg)
Uso de las funciones del Grupo en una sub consulta
![Page 79: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/79.jpg)
Clausula HAVING con sub consultas
![Page 80: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/80.jpg)
Uso de operadores SET
![Page 81: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/81.jpg)
Uso de operadores SET
![Page 82: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/82.jpg)
Uso de operadores SET
Operadores de conjunto se combinan los resultados de dos o más consultas de componentes en un solo resultado. Las consultas que contienen los operadores establecidos se llaman consultas compuestas.
![Page 83: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/83.jpg)
Operador UNION
1.- El número de columnas seleccionadas deben ser el mismo en las consultas.2.- Los tipos de datos de las columnas deben estar en el mismo grupo de tipos de datos (como numérico o de caracteres).3.- Los nombres de las columnas no tienen que ser idénticos.
![Page 84: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/84.jpg)
Operador UNION
El operador UNION elimina los registros duplicados. Si los registros que se producen en los empleados y las tablas JOB_HISTORY son idénticos, los registros se muestran sólo una vez. Observe en el resultado que se muestra en la diapositiva que el registro del empleado con la EMPLOYEE_ID 200 aparece dos veces porque la JOB_ID es diferente en cada fila
![Page 85: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/85.jpg)
Operador UNION
Considere el siguiente ejemplo
![Page 86: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/86.jpg)
Operador UNION
Considere el siguiente ejemplo
![Page 87: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/87.jpg)
Operador UNION ALL
Considere el siguiente ejemplo
![Page 88: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/88.jpg)
Operador INTERSECT
Utilice el operador INTERSECT para devolver todas las filas que son comunes a varias consultas.
DirectricesEl número de columnas y los tipos de datos de las columnas que se seleccionan por las sentencias SELECT en las consultas deben ser idénticos en todas las sentencias SELECT utilizadas en la consulta. Los nombres de las columnas, sin embargo, no tienen por qué ser idénticos.Invertir el orden de las tablas intersecadas no altera el resultado.INTERSECT no ignora los valores NULL
![Page 89: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/89.jpg)
Operador INTERSECT
![Page 90: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/90.jpg)
Operador MINUS
Muestra los employees ids de los empleados que no han cambiado sus puestos de trabajo ni una sola vez
![Page 91: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/91.jpg)
El uso de la cláusula ORDER BY en operaciones de conjunto
La cláusula ORDER BY sólo puede aparecer una vez al final de la consulta compuesta.
La cláusula ORDER BY sólo reconoce las columnas de la primera consulta SELECT.
Por defecto, la primera columna de la primera consulta SELECT se utiliza para ordenar la salida en un orden ascendente
![Page 92: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/92.jpg)
Manipulación de Datos
![Page 93: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/93.jpg)
Sentencia INSERT
Añade nuevas filas a una tabla. El formato de la sentencia INSERT es:
Con esta sentencia, únicamente podemos insertar una fila en un instante de tiempo.
![Page 94: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/94.jpg)
Sentencia INSERT
1.- Inserta una nueva fila que contiene los valores para cada columna.2.- Los valores de la lista deben estar en el orden predeterminado de las columnas de la tabla.3.- De forma opcional, se puede definir la lista de las columnas a insertar en la cláusula INSERT.
![Page 95: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/95.jpg)
Sentencia INSERT
![Page 96: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/96.jpg)
Copiar filas de otra tabla
![Page 97: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/97.jpg)
Actualizar datos en una tabla
Update modifica los valores existentes en una tabla. Sintaxis:
Actualiza más de una fila si fuese necesario.
![Page 98: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/98.jpg)
Actualizar datos en una tabla
![Page 99: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/99.jpg)
Actualizar columnas con una sub consulta
Actualice el job_id, salario del empleado 113 con job_id y salario del employee 205
![Page 100: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/100.jpg)
Eliminar filas de una tabla
![Page 101: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/101.jpg)
Test
![Page 102: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/102.jpg)
Test
Usando una sub consulta es equivalente a realizar dos consultas secuenciales y usando el resultado de la primera consulta como los valores de búsqueda en la segunda consultaa.- Verdaderob.- Falso
![Page 103: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/103.jpg)
Test
Usando una sub consulta es equivalente a realizar dos consultas secuenciales y usando el resultado de la primera consulta como los valores de búsqueda en la segunda consultaa.- Verdaderob.- Falso
![Page 104: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/104.jpg)
Test
Tres de los siguientes operadores son válidos para la condición WHERE. ¿Cuáles?a.- >=
b.- !=
d.- IS LIKE
c.- IN BETWEEN
e.- <>
![Page 105: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/105.jpg)
Test
Tres de los siguientes operadores son válidos para la condición WHERE. ¿Cuáles?a.- >=
b.- !=
d.- IS LIKE
c.- IN BETWEEN
e.- <>
![Page 106: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/106.jpg)
Test
Identificar las dos consultas SELECT que se ejecutan con éxito
![Page 107: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/107.jpg)
Test
Identificar las dos consultas SELECT que se ejecutan con éxito
![Page 108: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/108.jpg)
Test
¿Qué hay de malo con esta afirmación?
![Page 109: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/109.jpg)
Test
¿Cuál será el resultado de la siguiente función? ROUND(144.24,-1) a. - 140 b. - 144 c. - 150 d. – 100
![Page 110: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/110.jpg)
Test
¿Cuál será el resultado de la siguiente función? ROUND(144.24,-1) a. - 140 b. - 144 c. - 150 d. – 100
![Page 111: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/111.jpg)
Test
¿Cuál de las siguientes afirmaciones es verdadera con respecto a la función COUNT? a.- COUNT (*) Cuenta los valores duplicados y los valores NULL en columnas de cualquier tipo de datos.
b.- La Función COUNT no puede trabajar con tipos de datos de fecha.
c.- COUNT (DISTINCT job_id) devuelve el número de filas con exclusión de las filas que contienen los duplicados y los valores NULL en la columna job_id.
d.- Una instrucción SELECT utilizando la función CONTAR con una palabra clave DISTINCT y no se puede incluir una cláusula WHERE.
![Page 112: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/112.jpg)
Test
¿Cuál de las siguientes afirmaciones es verdadera con respecto a la función COUNT? a.- COUNT (*) Cuenta los valores duplicados y los valores NULL en columnas de cualquier tipo de datos.
b.- La Función COUNT no puede trabajar con tipos de datos de fecha.
c.- COUNT (DISTINCT job_id) devuelve el número de filas con exclusión de las filas que contienen los duplicados y los valores NULL en la columna job_id.
d.- Una instrucción SELECT utilizando la función CONTAR con una palabra clave DISTINCT y no se puede incluir una cláusula WHERE.
![Page 113: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/113.jpg)
Test
¿Cuál de las siguientes opciones muestra relaciones correctas entre el criterio de búsqueda de datos, dentro de una base de datos utilizando la cláusula WHERE y la función de cada uno?
1.- 1C, 2A, 3B
2.- 1A, 2B, 3D
3.- 1D, 2A, 3C
4.- 1B, 2C,3A
![Page 114: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/114.jpg)
Test
¿Cuál de las siguientes opciones muestra relaciones correctas entre el criterio de búsqueda de datos, dentro de una base de datos utilizando la cláusula WHERE y la función de cada uno?
1.- 1C, 2A, 3B
2.- 1A, 2B, 3D
3.- 1D, 2A, 3C
4.- 1B, 2C,3A
![Page 115: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/115.jpg)
Test
Identifique dos conceptos para las funciones de grupo y la cláusula GROUP BY.a.Ud. no puede utilizar un alias de columna en la cláusula GROUP BY.
b.La columna GROUP BY debe estar en la cláusula SELECT.
c.Mediante el uso de una cláusula WHERE, puede excluir filas antes de dividirse en grupos.
d.La cláusula GROUP BY asegura el orden de los registros y/o conjunto de resultados.
e.Si incluye una función de grupo en una cláusula SELECT, debe incluir una cláusula GROUP BY.
![Page 116: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/116.jpg)
Test
Identifique dos conceptos para las funciones de grupo y la cláusula GROUP BY.a.Ud. no puede utilizar un alias de columna en la cláusula GROUP BY.
b.La columna GROUP BY debe estar en la cláusula SELECT.
c.Mediante el uso de una cláusula WHERE, puede excluir filas antes de dividirse en grupos.
d.La cláusula GROUP BY asegura el orden de los registros y/o conjunto de resultados.
e.Si incluye una función de grupo en una cláusula SELECT, debe incluir una cláusula GROUP BY.
![Page 117: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/117.jpg)
Test
Suponiendo que los apellidos de los empleados están bien registrados en la tabla, ¿cuál será el resultado de la siguiente consulta?
SELECT employee_id, last_name, department_id FROM employees WHERE last_name = 'smith';
a.- Puede mostrar los detalles del empleado con el último nombre que Smith
b.-Le dará ningún resultado.
c.-Le dará los detalles para que el empleado tenga el apellido que 'Smith' en minúsculas.
d.-Le dará los detalles del empleado tenga el apellido 'Smith'.
![Page 118: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/118.jpg)
Test
Suponiendo que los apellidos de los empleados están bien registrados en la tabla, ¿cuál será el resultado de la siguiente consulta?
SELECT employee_id, last_name, department_id FROM employees WHERE last_name = 'smith';
a.- Puede mostrar los detalles del empleado con el último nombre que Smith
b.-Le dará ningún resultado.
c.-Le dará los detalles para que el empleado tenga el apellido que 'Smith' en minúsculas.
d.-Le dará los detalles del empleado tenga el apellido 'Smith'.
![Page 119: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/119.jpg)
Test
Usted necesita saber cuales son los empleados que pertenecen al departamento de 'Jessica Butcher' y tienen sueldo mayor que el salario de 'Jessica Butcher', ella tiene un ID de empleado número 40. ¿Cuál de las siguientes consultas va a funcionar? a.- SELECT first_name, last_name
FROM employees
WHERE last_name = 'Butcher'
AND first_name = 'Jessica'
AND salary > 10000;
![Page 120: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/120.jpg)
Test
Usted necesita saber cuales son los empleados que pertenecen al departamento de 'Jessica Butcher' y tienen sueldo mayor que el salario de 'Jessica Butcher', ella tiene un ID de empleado número 40. ¿Cuál de las siguientes consultas va a funcionar? b.- SELECT first_name, last_name
FROM employees
WHERE department = 100;
![Page 121: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/121.jpg)
Test
Usted necesita saber cuales son los empleados que pertenecen al departamento de 'Jessica Butcher' y tienen sueldo mayor que el salario de 'Jessica Butcher', ella tiene un ID de empleado número 40. ¿Cuál de las siguientes consultas va a funcionar? c.- SELECT first_name, last_name FROM employees
WHERE department = (SELECT department FROM employees
WHERE first_name = 'Jessica‘ AND last_name = 'Butcher'
AND employee_id = 40)
AND salary > (SELECT salary FROM employees
WHERE first_name = 'Jessica‘ AND last_name = 'Butcher'
AND employee_id = 40);
![Page 122: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/122.jpg)
Test
Identifique dos ideas de los operadores establecidos.
a. Las expresiones en las consultas SELECT deben coincidir en número.b. Los paréntesis no puede ser utilizado para alterar la secuencia de ejecución.c. El tipo de datos de cada columna en la segunda consulta debe coincidir con el tipo de datos de su columna correspondiente de la primera consulta.d. La cláusula ORDER BY sólo se puede utilizar una vez en una consulta compuesta, a menos que se utilice el operador UNION ALL.
![Page 123: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/123.jpg)
Test
Identifique dos ideas de los operadores establecidos.
a. Las expresiones en las consultas SELECT deben coincidir en número.b. Los paréntesis no puede ser utilizado para alterar la secuencia de ejecución.c. El tipo de datos de cada columna en la segunda consulta debe coincidir con el tipo de datos de su columna correspondiente de la primera consulta.d. La cláusula ORDER BY sólo se puede utilizar una sola vez en una consulta compuesta, a menos que se utilice el operador UNION ALL.
![Page 124: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/124.jpg)
Test
Dentro de base de datos, las sub consultas con SQL permiten:
a.- Utilizar los resultados de una consulta como parte de otra.
b.- Consultar información que se encuentra en más de tres tablas.
c.- Consultar información comparando campos que tienen el mismo tipo de dato.
c.- Ejecutar las consultas de manera más rápida
![Page 125: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/125.jpg)
Test
Dentro de base de datos, las sub consultas con SQL permiten:
a.- Utilizar los resultados de una consulta como parte de otra.
b.- Consultar información que se encuentra en más de tres tablas.
c.- Consultar información comparando campos que tienen el mismo tipo de dato.
c.- Ejecutar las consultas de manera más rápida
![Page 126: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/126.jpg)
Ejercicio 1
Listar el Apellido y el sueldo de los empleados que no ganan entre 4000 y 15000.
Select last_name, salaryfrom employeeswhere salary not between 4000 and 15000
![Page 127: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/127.jpg)
Ejercicio 2
Listar el apellido y el sueldo de los empleados que pertenecen a los departamentos 20 o 50, que ganan entre 4000 y 15000.
Select last_name, salaryfrom employeeswhere salary between 4000 and 15000 and department_id in (20, 50)
![Page 128: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/128.jpg)
Ejercicio 3
Listar el apellido de los empleados que tengan un ‘a’ en la segunda letra del apellido.
Select last_namefrom employeesWhere last_name like ‘_a%’
![Page 129: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/129.jpg)
Ejercicio 4
Listar el apellido y sueldo de los empleados pertenecientes a departamentos radicados en ‘Seattle’.Select last_name, salaryfrom employeesWhere department_id in (select department_id from departments d, locations l where d.location_id=l.location_id and city=‘Seattle’)
![Page 130: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/130.jpg)
Ejercicio 5
Listar cod departamento cuya media de salarios es inferior a 7000 (Contando solo los empleados que ganan menos de 4000)Select department_id, avg(salary)from employeesWhere salary < =4000Group by department_idHaving avg(salary)<7000
![Page 131: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/131.jpg)
Ejercicio 6
Encontrar el nombre y salario de los empleados que ganan menos de 2000. De este conjunto, seleccionar los que tengan una ‘a’ en el nombre. Select *from (select last_name, salary from employees where salary > 2000)Where last_name like ‘%a%’
![Page 132: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/132.jpg)
Ejercicio 7
Seleccionar el ID empleado, apellido y sueldo de los empleados que ganan más que la media de la empresa. Ordenar los registros por el salarioSelect employee_id, last_name, salaryfrom employeesWhere salary > (select avg(salary) from employees)Order by salary
![Page 133: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/133.jpg)
Ejercicio 8
Seleccionar el ID empleado, apellido, de todos los colegas de empleados que tengan una ‘u’ en su apellido. (Colega: persona que trabaja en el mismo departamento.)Select employee_id, last_namefrom employeesWhere department_id in (select department_id from employees where last_name like ‘%u%’)
![Page 134: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/134.jpg)
Ejercicio 8
Seleccionar ID empleado, apellido, sueldo de los colegas de empleados que tengan una ‘u’ en su apellido, y que ganen sueldos (los colegas) mayor que la media de sueldos de la empresa.Select employee_id, last_name, salaryfrom employeesWhere department_id in (select department_id from employees where last_name like ‘%u%’) and salary > (select avg(salary) from employees)
![Page 135: Breves Conceptos de SQL](https://reader034.fdocuments.ec/reader034/viewer/2022051115/55cf9018550346703ba2e916/html5/thumbnails/135.jpg)
Creación de Tablas
Sentencia: CREATE TABLE, su formato:
Donde la definición de columna es: