Kategóriák: Minden - bases - datos - funciones - agregación

a SoyZagu SoyZagu 8 hónapja

45

Actividad 4 Conceptos SQL

El uso de SQL es fundamental para el almacenamiento y recuperación de información en bases de datos, proporcionando un entorno seguro y escalable para diversas aplicaciones web y móviles.

Actividad 4 
Conceptos SQL

Actividad 4 Conceptos SQL

1. Lenguaje para almacenar y recuperar información en bases de datos. 2. Lenguaje de estructurado que permite consultar, manipular y transformar datos de una base de datos. 3. Las bases de datos SQL brindan almacenamiento seguro y escalable para millones de sitios web y aplicaciones móviles. 4. Existen muchas bases de datos SQL populares, incluidas SQLite, MySQL, Postgres, Oracle y Microsoft SQL Server.

Subconsultas correlacionales
Una subconsulta correlacionada es una subconsulta que depende de la consulta principal para obtener su resultado. La subconsulta se ejecuta una vez por cada fila de la consulta principal.

EJEMPLO: Mostrar el nombre de los empleados donde la comisión sea mayor a la mitad del sueldo SELECT NOMBRE FROM EMPLEADO WHERE COMISIÓN > SUELDO / 2;

Consultas a múltiples tablas
Las consultas a múltiples tablas se utilizan para combinar información de dos o más tablas relacionadas en una sola consulta.

INNER JOIN Establece la unión entre 2 tablas o conjunto de resultados, donde los valores sean exactos en ambas tablas.

Ejemplo: De los CLIENTES debemos registrar: Nombres y Apellidos Documento de identidad Correo De los PRODUCTOS tenemos que registrar: Código Nombre Descripción Valor de descuentos De las VENTAS debemos registrar: Al cliente que se le ha hecho la venta Fecha de la venta Cuantas unidades y cuales productos hemos vendido Paso 1: Análisis Se identifican cuatro tablas CLIENTES PRODUCTOS VENTAS VENTAS_DETALLE

Paso 2: ¿Cómo podemos identificar las 4 tablas? En primero lugar en el ejercicio se está pidiendo registrar las ventas, así que para poder guardar las ventas necesitamos crear nuestra primera tabla (VENTAS). Adicional a eso nos piden registrar el detalle de cada una de las ventas, muy bien, para registrar el detalle de las ventas debemos crear nuestra segunda tabla (VENTAS_DETALLE), además tenemos que identificar que debemos crear nuestra primera relación entre la tabla VENTAS y VENTAS_DETALLE a través del uso de la clave primaria y foránea.

Paso 3: En el segundo lugar nos piden cuantos y que productos fueron registrados en cada ventas, si bien es cierto que podríamos registrar los productos con sus características en la tabla (VENTAS_DETALLE) no sería lo más óptimo, lo ideal es separar cada objeto y relacionarlo a través de un campo. Así que tenemos que crear nuestra tercera tabla (PRODUCTOS).

Paso 4: Resolver mediante consultas Total de las ventas diarias por cliente que está generando. Ordenadas por fecha. Mostrar (nombres, DNI, corre) del cliente. SELECT VEN. FECHA AS FECHA, CLI. NOMBRE AS NOMBRE_CLIENTE, CLI.APELLIDO AS APELLIDO_CLIENTE, CLI.DNI AS DNI_CLIENTE, CLI.CORREO AS CORREO_CLIENTE, SUM(VEN.TOTAL) AS TOTAL_VENTAS FROM VENTAS VEN INNER JOIN CLIENTES CLI ON (VEN. ClienteID = CLI.ClienteID) GROUP BY VEN.Fecha, CLI.NOMBRE, CLI.APELLLIDO, CLI.DNI, CLI.CORREO ORDER BY VEN.Fecha

Subconsultas
Una subconsulta es una consulta anidada dentro de otra consulta principal. La subconsulta se ejecuta primero y su resultado se utiliza en la consulta principal para obtener un resultado más específico.

EJEMPLO 1: Seleccionar el trabajo (JOB) y los salarios máximo y mínimo (SALARY) de cada grupo de filas con el mismo código de trabajo en la tabla EMPLOYEE SELECT JOB MAX (SALARY) FROM EMPLOYEE GROUP BY JOB; El operador UNION une los resultados de varios SELECT. Pero si hay datos duplicados en ellos, elimina los mismos.

EJEMPLO 2: Una las tablas EMP_ACT y EMPLOYEE, seleccione todas las columnas de la tablas EMP_ACT y añada el apellido del empleado (LASTNAME) de la tabla EMPLOYEE a cada fila del resultado. SELECT EMP_ACT. *, LASTNAME FROM EMP_ACT, EMPLOYEE WHERE EMP_ACT:EMPNO = EMPLOYEE.EMPNO

Operadores
OPERADORES ARITMETICOS SQL: Operador Descripción + Añadir - Restar * Multiplicar / Dividir % Modulo

OPERADORES SQL BIT A BIT: Operador Descripción & Bitwise AND | Bitwise OR ^ Bitwise exclusive OR

OPERADORES COMPUESTOS SQL: Operador Descripción +- And equals -- Subtract equals *- Multiply equals /- Divide equals %- Modulo equals &- Bitwise AND equals ^-- Bitwise exclusive equals |*- Bitwise OR equals

OPERADORES DE COMPARACIÓN: Operador Descripción - Equal to > Greater than < Less than >- Greater than or equal to >- Less than or equal to <> Not equal to

OPERADORES LOGICOS SQL: Operador Descripción ALL TRUE if all of the subquery values meet the condition AND TRUE if all the conditions separated by AND is TRUE ANY TRUE if any of the subquery values meet the condition BETWEEN TRUE if the operand is within the range of comparisons EXISTS TRUE if the subquery returns one or more records IN TRUE if the operand is equal to one of a list of expressions LIKE TRUE if the operand matches a pattern NOT Displays a record if the condition(s) is NOT TRUE OR TRUE ir any of the conditions separated by OR is TRUE SOME TRUE if any of the subquery values meeet the condition

Operaciones Sobre Conjuntos
Estas consultas utilizan al menos dos SELECT cuyos resultados que se pueden combinar para formar una única consulta. Se basan en los operadores matemáticos de conjuntos (unión, intersección diferencia).

- UNION: Combina los resultados de dos consultas en un solo conjunto, eliminando las filas duplicadas. Las columnas devueltas en ambas consultas deben coincidir en número y tipo de columnas. EJEMPLO 1. SELECT nombre FROM provincias UNION SELECT nombre FROM comunidades El operador UNION une los resultados de varios SELECT. Pero si hay datos duplicados en ellos, elimina los mismos.

- INTERSECT: De la misma forma, la palabra INTERSECT permite unir dos consultas SELECT de modo que el resultado serán las filas que estén presentes en ambas consultas. EJEMPLO : SELECT tipo,modelo FROM existencias WHERE n_almacen=1 INTERSECT SELECT tipo,modelo FROM existencias WHERE n_almacen=2

- EXCEPT (o MINUS): Con MINUS también se combinan dos consultas SELECT de forma que aparecerán los registros del primer SELECT que no estén presentes en el segundo. EJEMPLO: Tipos y modelos de piezas que se encuentren en el almacén 1 y no en el 2. SELECT tipo,modelo FROM existencias WHERE n_almacen=1 MINUS SELECT tipo,modelo FROM existencias WHERE n_almacen=2

Funciones
Funciones de Agregación: Dentro del lenguaje SQL existen muchas funciones que permiten obtener diferentes resultados en base a las necesidades que tengamos, una de esas son las funciones de agregación SQL, estas funciones permiten realizar cálculos y operaciones sobre los registros de una tabla y sobre una o varias columnas.

- COUNT( ): Cuenta el número de registros o valores no nulos de una columna. SELECT COUNT(*) AS TotalRegistros FROM tabla; - MIN( ): Esta función permite obtener el mínimo valor de una expresión a evaluar SELECT MIN (precio) AS PrecioMinimo FROM productos; -MAX ( ): Esta función me permite obtener el máximos valor de una expresión a evaluar SELECT MAX (precio) AS PrecioMaximo FROM productos; - AVG ( ): Esta función devuelve el valor promedio de la expresión a evaluar, hay que tener en cuenta que dicha expresión debe ser numérica, en caso contrario la consulta me devolverá un mensaje de erros. SELECT AVG (edad) AS EdadPromedio FROM usuarios; - SUM( ): Esta función devuelve la suma de todos los valores especificados en la expresión, así mismo solo debe usarse con expresiones numéricas, caso contrario nos retornará un mensaje de error en la consulta. SELECT SUM (ventas) AS TotalVentas FROM productos; - GROUP BY( ): Cuando hacemos una consulta con varias columnas y usamos funciones de agregación SQL, usamos la sentencia GROUP BY para poder recuperar el resultado de la consulta. Dentro de la sintaxis GROUP BY van a ir todas la columnas que no sean funciones de agregación SQL. SELECT categoria, COUNT(*) AS TotalProductos FROM productos GROUP BY catergoria;

Sentencias Básicas
Otras Sentencias Básicas:

TRUNCATE: Elimina todos los registros de una tabla.

Eliminar todos los registros de la tabla "clientes" TRUNCATE TABLE: Clientes;

DCL - Lenguaje de Control de Datos: Permite otorgar permisos a uno o más roles para determinadas tareas, así como el control de accesos a la base de datos.

GRANT: Usado para otorgar privilegios de acceso de usuario a la base de datos. REVOKE: Utilizado para retirar privilegios de acceso otorgados con el comando GRANT.

DML - Lenguaje de Manipulación de datos: Permiten consultar, actualizar, insertar o eliminar los datos o registros de las tablas.

SELECT: Recupera datos de una tabla de base de datos. - Vistas, índices entre otros. INSERT: Inserta un tipo de dato en el atributo de una entidad o tabla de la base de datos. UPDATE: Modifica registros existentes en una tabla. UPDATE: Elimina registros de una tabla.

DDL - Lenguaje de Definición: Sentencias que nos permiten definir, alterar, modificar objetos dentro de una base de datos.

CREATE: Permite crear objetos dentro de la base de datos, como por ejemplo: -Procedimientos almacenados -Tablas -Bases de datos -Funciones - Vistas, índices entre otros. ALTER: Modifica la estructura de una tabla y otro objeto. DROP: Elimina una tabla, vista u otro objeto de la base de datos.