Sesión #05

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 21

SQL Server for Analytics

EXPOSITOR: Ghalo Vhadis Morua Castañeda


Sesión 5:
Complementando el uso de Operadores, Cláusulas, Funciones
y Tipos de datos.
5.1
Uso de los
Operadores
“ROLLUP”, “CUBE”,
• Uso de “GROUP BY” con los operadores “ROLLUP” y “CUBE”.
“PIVOT” y la
• La cláusula “OVER” con funciones de agregación.
Cláusula “OVER” • Uso del operador “PIVOT”.
Uso de “GROUP BY” con los operadores “ROLLUP” y “CUBE”.

El operador “ROLLUP” permite resumir los valores de grupo y se usa normalmente para producir promedios acumulados o sumas
acumuladas.
Puede hacer esto aplicando la función de agregación en la lista de columnas de “SELECT” para cada columna en la cláusula
“GROUP BY” moviéndose de izquierda a derecha.
El operador “CUBE” permite crear y resumir todas las posibles combinaciones de grupos basadas en la cláusula “GROUP BY”.
La cláusula “OVER” con funciones de agregación.

La cláusula OVER usada con las funciones de agregación permite crear particiones de datos bajo determinado criterio, y calcular
la función de agregación para cada partición con la ventaja de que permite mostrar los elementos que forman el consolidado de
la partición.
Uso del operador “PIVOT”.

Con mucha frecuencia necesitamos ver los datos en base a múltiples dimensiones (o entidades). En las versiones antiguas de SQL
Server disponemos de los operadores “ROLLUP” y “CUBE” que se utilizan con la cláusula “GROUP BY”, y permiten ver data
resumida en base a distintas dimensiones.
Las ultimas versiones de SQL Server incorporan el operador “PIVOT” que es mas fácil de entender e implementar que los
operadores “ROLLUP” y “CUBE”. Por ejemplo, con el operador “PIVOT” podemos rotar filas y mostrarlas como columnas para
obtener una vista diferente de los datos. El resultado de “PIVOT” es una tabla de doble entrada.

Columna_numérica: Es la columna cuyos valores se desea mostrar en una


tabla de doble entrada.
Columna_dimensión: Es la columna cuyos valores en una consulta normal
se ven como filas y que en la consulta PIVOT se desea ver como columnas.
Lista_valores_columna_dimensión: Son los valores columna_dimensión a
mostrar como columnas en la tabla de doble entrada.
5.2
Uso de funciones
de “Fecha-Hora”,
“Texto” y
• Funciones de Fecha y Hora.
”Configuración”
• Funciones de Texto y el operador LIKE.
• Funciones de Configuración.
Funciones de Fecha y Hora.

Funciones de Fecha y Hora del sistema:

FUNCIÓN DESCRIPCIÓN

SYSDATETIME ( ) Retorna un valor datetime2(7) con la fecha y hora del sistema (fecha y hora en el servidor).

SYSDATETIMEOFFSET ( ) Retorna un valor datetimeoffset(7) con la fecha y hora del sistema (fecha y hora en el
servidor) incluyendo el ajuste por zona horaria.

CURRENT_TIMESTAMP Retorna un valor datetime con la fecha y hora del sistema (fecha y hora en el servidor), es una
función “ANSI SQL”.

GETDATE () Retorna un valor datetime con la fecha y hora del sistema (fecha y hora en el servidor), es una
función “T-SQL”.
Funciones de Fecha y Hora.

Funciones que obtienen una parte de Fecha y Hora:


FUNCIÓN DESCRIPCIÓN
DATENAME (parte_fecha,fecha) Devuelve, a partir de fecha, una cadena con la parte_fecha especificada.
DATEPART (parte_fecha,fecha) Devuelve, a partir de fecha, un valor entero con la parte_fecha especificada.

Argumentos válidos para “parte_Fecha”:

DAY (fecha) Devuelve un entero con la parte del día


de fecha.
MONTH (fecha) Devuelve un entero con la parte del
mes de fecha.
YEAR (fecha) Devuelve un entero con la parte del
año de fecha.
Funciones de Fecha y Hora.

Funciones que obtienen Fecha y Hora a partir de sus partes:

FUNCIÓN DESCRIPCIÓN
DATEFROMPARTS (año,mes,dia) Devuelve un dato de tipo date para el año, mes y día especificados.
DATETIMEFROMPARTS Devuelve un dato de tipo datetime para los valores especificados.
(año,mes,día,hora,minutos,segundos,milisegundos)
DATETIME2FROMPARTS Devuelve un dato de tipo datetime2 para los valores especificados.
(año, mes, día, hora, minutos, segundos, fracción, precisión)
DATETIMEOFFSETFROMPARTS Entrega un valor datetimeoffset para las partes especificadas con el
(año, mes, día, hora, minutos, segundos, fracción, desplazamiento horario especificado.
desplazamiento_hora, desplazamiento_minutos, precisión)
SMALLDATETIMEFROMPARTS Entrega un valor smalldatetime para las partes especificadas.
( año, mes, día, hora, minutos )
TIMEFROMPARTS Entrega un valor time para las partes especificadas.
( hora, minutos, segundos, fracción, precisión )
Funciones de Fecha y Hora.

Funciones que modifican valores de Fecha y Hora:

FUNCIÓN DESCRIPCIÓN
DATEADD (parte_fecha,n,fecha) Genera una nueva fecha a partir de fecha, añadiendo a fecha n unidades de parte_fecha.
EOMONTH ( fecha [, meses_adesplazar ] ) Entrega la fecha del último día del mes para la fecha especificada. Se puede especificar un
desplazamiento opcional.
SWITCHOFFSET ( fechadatetimeoffset, Entrega la fecha y hora en zonahoraria para la fechadatetimeoffset.
zonahoraria )
TODATETIMEOFFSET ( fechadatetime, Convierte fechadatetime a un valor datetimeoffset en la zonahoraria especificada.
zonahoraria )
Funciones de Fecha y Hora.

Función que obtiene la diferencia entre Fechas:

FUNCIÓN DESCRIPCIÓN
DATEDIFF (parte_fecha,fecha1,fecha2) Entrega la diferencia entre fecha1 y fecha2 en las unidades indicadas en parte_fecha.

Función que obtiene la diferencia entre Fechas:

FUNCIÓN DESCRIPCIÓN
ISDATE (expresión) Determina si expresión es una fecha válida.
Funciones de Texto y el operador LIKE.

FUNCIÓN DESCRIPCIÓN

SUBSTRING La función de sub cadena en SQL se utiliza para tomar una parte de los datos almacenados

LTRIM Elimina todos los espacios en blanco del comienzo de la cadena.

RTRIM Elimina todos los espacios en blanco del final de la cadena.

REPLACE Reemplaza parte de una cadena de texto, en función del número de caracteres que especifique, con una cadena de texto
diferente.

UPPER Convierte en Mayúsculas una cadena de caracteres.

LOWER Convierte en Minúsculas una cadena de caracteres.

LEN Permite contar la cantidad de caracteres de un valor.


Funciones de Texto y el operador LIKE.

OPERADOR “LIKE”:

Operador que se utiliza en la cláusula WHERE, permite hacer una búsqueda basada en un “patrón” en vez de especificar
exactamente lo que se desea (como en IN) o determinar un rango (como en BETWEEN).
Un “patrón” generalmente consiste en comodines:
'A_Z': Toda línea que comience con 'A', otro carácter y termine con 'Z'. Por ejemplo, 'ABZ' y 'A2Z' deberían satisfacer la condición,
mientras 'AKKZ' no debería (debido a que hay dos caracteres entre A y Z en vez de uno).
'ABC%': Todas las líneas que comienzan con 'ABC'. Por ejemplo, 'ABCD' y 'ABCABC' ambas deberían satisfacer la condición.
'%XYZ': Todas las líneas que terminan con 'XYZ'. Por ejemplo, 'WXYZ' y 'ZZXYZ' ambas deberían satisfacer la condición.
'%AN%': Todas las líneas que contienen el patrón 'AN' en cualquier lado. Por ejemplo, 'LOS ANGELES' y 'SAN FRANCISCO' ambos
deberían satisfacer la condición.
Funciones de Configuración.

Las funciones de configuración son todas no deterministas. Esto significa que no siempre devuelven el mismo resultado cada vez
que se las llama, incluso con el mismo conjunto de valores de entrada.
Las funciones deterministas devuelven siempre el mismo resultado cada vez que se invocan con un conjunto específico de
valores de entrada y cuando el estado de la base de datos es el mismo.
Las funciones no deterministas pueden devolver resultados diferentes cada vez que se llaman con un conjunto específico de
valores de entrada aunque el estado de la base de datos a la que tienen acceso permanezca sin cambios.
Por ejemplo, la función AVG siempre devuelve el mismo resultado dadas las condiciones indicadas anteriormente pero la función
GETDATE, que devuelve el valor datetime actual, siempre devuelve un resultado diferente.
Funciones de Configuración.

FUNCIÓN DESCRIPCIÓN

@@DATEFIRST Especifica el primer día de la semana. El valor predeterminado para inglés de EE.UU. es 7, domingo. Esta configuración de
idioma afecta a la interpretación de cadenas de caracteres cuando se convierten en valores de fecha para el
almacenamiento en la base de datos y la presentación de los valores de fecha que se almacenan en la base de datos. Esta
configuración no afecta al formato de almacenamiento de datos de fecha.

@@LANGUAGE Devuelve el nombre del idioma en uso. Para ver información acerca de la configuración de idioma, incluidos los nombres de
idiomas oficiales válidos, ejecute sp_helplanguage sin especificar ningún parámetro.

@@SERVERNAME Devuelve el nombre del servidor local en el que se ejecuta SQL Server. El programa de instalación de SQL Server establece
durante la instalación el nombre del equipo como nombre de servidor.

@@SERVICENAME Devuelve 'MSSQLSERVER' si la instancia actual es la predeterminada; esta función devuelve el nombre de la instancia.

@@VERSION Devuelve los detalles de la versión de SQL Server.


5.3
Tipos de datos de
SQL y los definidos
por el usuario
• Tipos de datos.
• Tipos de datos definidos por el usuario.
Tipos de datos.
Tipos de datos definidos por el usuario.

Mediante el procedimiento almacenado “SP_ADDTYPE” podemos crear nuestros tipos de datos.


Síguenos como @cedhinfo en:

También podría gustarte