Saltar al contenido

Reemplace el valor vacío o NULO con un valor específico en el resultado de la consulta HIVE

Solución:

Usar LENGTH() para comprobar la longitud del valor de la columna. Devuelve> 0, si hay algún valor, devuelve 0 para un valor vacío o NULO.

También encuadre el valor de la columna en CASE WHEN ... END cuadra

La consulta final puede verse así:

SELECT country, CASE WHEN LENGTH(os(agent)) > 0 THEN os(agent) ELSE 'Others' END AS SO, COUNT(*) 
FROM clicks_data 
WHERE country IS NOT NULL AND os(agent) IS NOT NULL 
GROUP BY country, os(agent);

¡Espero que esto te ayude!

COALESCE será la solución más adecuada y óptima para su caso

Sintaxis:
COALESCE (VALUE, DEFAULT_VALUE): La función devuelve el valor predeterminado cuando los valores son nulos en caso contrario VALOR;

Consulta

SELECT country, COALESCE(os(agent),'Others') AS SO, COUNT(*) 
FROM clicks_data 
WHERE country IS NOT NULL AND os(agent) IS NOT NULL 
GROUP BY country, os(agent);

Espero que esta sea la solución eficiente para su problema.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *