Fundamentos de SQL: Manipulación de Datos, Agregación y Funciones de Fecha
Enviado por Chuletator online y clasificado en Informática y Telecomunicaciones
Escrito el en
español con un tamaño de 4,6 KB
Funciones Esenciales de SQL: Agregación, Cadenas y Fechas
A continuación, se presentan ejemplos prácticos de consultas SQL que demuestran el uso de funciones de agregación, manipulación de cadenas y gestión de fechas, utilizando tablas de ejemplo como EMPLE y NOTAS_ALUMNOS.
1. Consultas de Agregación y Subconsultas
Estas consultas permiten resumir datos y obtener valores estadísticos de las tablas.
Cálculo del Salario Medio por Departamento
Calcula el salario medio de los empleados del departamento 10 de la tabla EMPLE:
SELECT AVG(SALARIO) FROM EMPLE WHERE DEPT_NO=10;Conteo de Registros No Nulos
Calcula el número de filas de la tabla EMPLE donde la columna COMISION no es nula:
SELECT COUNT(COMISION) FROM EMPLE;Obtención del Salario Máximo
Calcula el salario máximo de la tabla EMPLE:
SELECT MAX(SALARIO) FROM EMPLE;Identificación del Empleado con Mayor Salario
Obtén el apellido y el salario del empleado que tiene el salario más alto, utilizando una subconsulta:
SELECT APELLIDO, SALARIO FROM EMPLE WHERE SALARIO=(SELECT MAX(SALARIO) FROM EMPLE);Conteo de Oficios Únicos
Calcula el número de oficios distintos que existen en la tabla EMPLE:
SELECT COUNT(DISTINCT OFICIO) "OFICIOS" FROM EMPLE;2. Funciones de Manipulación de Cadenas (Strings)
Estas funciones permiten modificar, formatear y extraer información de campos de texto.
Concatenación de Cadenas (CONCAT)
Obtén el apellido de los empleados de la tabla EMPLE, mostrando el resultado con el formato: "El apellido es: APELLIDO".
SELECT CONCAT('El apellido es: ', APELLIDO) FROM EMPLE;Conversión de Mayúsculas y Minúsculas (LOWER, UPPER, INITCAP)
Visualiza la cadena 'oRACle Y sqL' en minúsculas, mayúsculas y formato tipo título (iniciales en mayúscula), utilizando la tabla DUAL:
SELECT LOWER('oRACle Y sqL') "minuscula", UPPER('oRACle Y sqL') "MAYUSCULA", INITCAP('oRACle Y sqL') "Tipo Titulo" FROM DUAL;Relleno de Cadenas (LPAD y RPAD)
Para cada fila de la tabla NOTAS_ALUMNOS, se obtiene el nombre del alumno con una longitud de 30 caracteres, rellenando por la izquierda con puntos (LPAD) y rellenando por la derecha (RPAD):
SELECT LPAD(NOMBRE_ALUMNO, 30, '.') "IZQUIERDA", RPAD(NOMBRE_ALUMNO, 30, '.') "DERECHA" FROM NOTAS_ALUMNOS;Sustitución de Subcadenas (REPLACE)
Sustituye la letra 'O' por 'AS' en la cadena 'BLANCO Y NEGRO':
SELECT REPLACE('BLANCO Y NEGRO', 'O', 'AS') FROM DUAL;Extracción de Subcadenas (SUBSTR)
Visualiza el apellido y su primera letra para los empleados del departamento 10 de la tabla EMPLE:
SELECT APELLIDO, SUBSTR(APELLIDO, 1, 1) FROM EMPLE WHERE DEPT_NO = 10;3. Funciones de Fecha y Tiempo
Estas funciones permiten realizar cálculos y formatear datos de tipo fecha.
Adición de Meses (ADD_MONTHS)
A partir de la tabla EMPLE, suma doce meses a la fecha de alta (FECHA_ALT) para los empleados del departamento 10:
SELECT FECHA_ALT, ADD_MONTHS(FECHA_ALT, 12) FROM EMPLE WHERE DEPT_NO=10;Obtención del Último Día del Mes (LAST_DAY)
Obtén de la tabla EMPLE el último día del mes correspondiente a cada una de las fechas de alta (FECHA_ALT) de los empleados del departamento 10:
SELECT FECHA_ALT, LAST_DAY(FECHA_ALT) FROM EMPLE WHERE DEPT_NO=10;Formato de Fecha Detallado (TO_CHAR)
Obtén la fecha de alta formateada para que aparezca el nombre completo del mes (month), el número de día del mes (DD) y el año completo (YYYY), para los empleados del departamento 10:
SELECT TO_CHAR (FECHA_ALT, 'month DD, YYYY') "NUEVA FECHA" FROM EMPLE WHERE DEPT_NO=10;Formato de Fecha Personalizado (TO_CHAR)
Obtén la fecha de alta de forma que aparezca el nombre del mes con tres letras (mon), el número de día del año (ddd), el último dígito del año (y) y los tres últimos dígitos del año (yyy):
SELECT TO_CHAR (FECHA_ALT, 'mon ddd y yyy') "FECHA" FROM EMPLE WHERE DEPT_NO=10;