Función de consulta pública de Hive
NVL: Asignar valores a datos nulos.
Su formato es
NVL (cadena 1, reemplazada por).
Su función es que si cadena1 es NULL, la función NVL devolverá el valor de replace_with, en caso contrario devolverá el valor de cadena1, si ambos parámetros son NULL devolverá NULL.
Date_format: hora del formato.
Date_add: hora más número de días.
Date_sub: Resta el tiempo de los días, similar a la suma. Sólo usa uno.
select date_sub(‘2019-06-29‘, 5);
Datediff: Restar dos veces.
select dateiff('2019-06-29', '2019-06-24');
concat(String A/Col, String B/Col...): Devuelve entrada El resultado de la concatenación de cadenas, admite cualquier cadena de entrada;
CONCAT_ws (separador, cadena 1, cadena 2,...): Es una forma especial de concat(). El separador entre el primer parámetro y los parámetros restantes.
El delimitador puede ser la misma cadena que el resto de parámetros. Si el delimitador está vacío, el valor de retorno también estará vacío.
Esta función omite cualquier cadena NULL y vacía después del parámetro delimitador. Se agregarán delimitadores entre cadenas concatenadas;
Seleccione concat_ws('-', str1, str 2) de XX; //str es un nombre de columna de tipo cadena.
COLLECT_SET(col): Esta función solo acepta tipos de datos básicos, y su función principal es resumir los valores de los campos.
Generar campos de tipo array.
Ejercicio: Agrupa personas con el mismo signo zodiacal y tipo de sangre.
El primer paso de la transformación:
Aries, el Rey Mono
Sagitario, un mar
Aries b Song Song
p>Aries, Zhu Bajie
Sagitario, un pico occidental
Fusionar
EXPLODE (col): combina una lista de matrices complejas o mapeo estructuras en colmena Dividir en varias líneas.
Vista lateral // Vista en sección
Uso: Vista horizontal alias de tabla udtf (expresión) como alias de columna
Descripción: Uso con UDTF (como dividir, explotar), puede dividir una columna de datos en varias filas y luego resumir los datos divididos.
Ejercicio: Ampliar los datos del array en la categoría de película.
Seleccione explotar (categoría) de movie_info;
OVER(): Especifique el tamaño de la ventana de datos en la que funciona la función de análisis, que puede cambiar a medida que cambian las filas;
OVER(): p>
/in over (para uso interno)/
Fila actual: fila actual;
N PRECEDENTE: reenviar n filas de datos;
N SIGUIENTE: las siguientes n líneas de datos;
Sin límites: punto de partida,
Frente ilimitado significa comenzar desde el frente, siguiente ilimitado significa terminar en el atrás;
/*Usado en exteriores*/
LAG (col, n): la enésima fila de datos hacia adelante
LEAD (col, n): la siguiente enésima fila Datos de fila;
NTILE(n): distribuye filas en una partición ordenada en grupos de datos específicos. Cada grupo tiene un número, comenzando desde 1.
Para cada fila, NTILE devuelve el número del grupo al que pertenece la fila. Nota: n debe ser de tipo int.
Datos:
1. Consultar el número de clientes y el número total de clientes que compraron en abril de 2017.
Grupo agrupa un valor en un grupo y procesa cada dato de forma independiente en la ventana.
Consultar los detalles de compra del cliente y el monto total de la compra
Acumular costos por fecha
Ordenar primero
Luego acumular
Consultar la hora de la última compra del cliente.
Próxima hora de compra
Consultar información del pedido de los 20 días anteriores.
RANK() se repetirá cuando la clasificación sea la misma y el número total no cambiará, por lo que se puede realizar en paralelo.
DENSE_RANK() se repetirá si la clasificación es la misma y el número total se reducirá.
ROW_NUMBER() se calcula secuencialmente.
Ejercicio: Calcula el ranking de rendimiento de cada materia.
Calcular el ranking de puntuación de cada materia