es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Null para un tipo de columna decimal en BigQuery.

   cast(sum(case
            when x.product = 'APPLE' and x.colour = 'RED' then round(x.price1,2)
            when x.product != 'APPLE' then 'NULL'
            else 0
         end) as decimal) as price,

La columna price es de tipo decimal. Pero quiero obtener una salida como Null solo para esta segunda declaración when en lugar del valor decimal.

¿Cómo puedo hacer eso?

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Para mostrar un valor Nulo en lugar de un valor decimal para el segundo caso “when”, simplemente puedes reemplazar la cadena ‘NULL’ con la palabra clave NULL. Esto resultará en el siguiente código:

    cast(sum(case
                when x.product = 'APPLE' and x.colour = 'RED' then round(x.price1,2)
                when x.product <> 'APPLE' then NULL
                else 0
             end) as decimal) as price,
    

    Este cambio asegurará que la columna price mostrará un valor Nulo para el segundo caso “when”, mientras mantiene el tipo de dato decimal para los otros valores en la columna.

Comments are closed.