entre Desarrolladores

Recibe ayuda de expertos

Registrate y pregunta

Es gratis y fácil

Recibe respuestas

Respuestas, votos y comentarios

Vota y selecciona respuestas

Recibe puntos, vota y da la solución

Pregunta

2votos

Como contar campos null en SQL Server

Hola a todos, alguien sabe como puedo contar campos null de un registro, quiero contar cuantos campos tienen valor 0 no registros si no campos, ojala que alguien me pueda ayudar

1voto

bl4z3r comentado

¿De un registro? O sea, ¿una fila de una tabla?

2 Respuestas

3votos

Leonardo-Tadei Puntos227320

Podrías hacerlo con una subquery para cada uno de los campos. Yo estoy probando esto en MySQL y da resultados correctos:

SELECT (
  SELECT COUNT( id )
  FROM `Tabla`
  WHERE campo1 IS NULL
 ) AS campo1null, (
  SELECT COUNT( id )
  FROM `Tabla`
  WHERE campo2 IS NULL
) AS campo2null

Supongo que en MS SQL Server también funciona, porque la query es ANSI SQL.

Saludos!

-1voto

AdanCervera Puntos2360

Yo haria algo como esto en cada uno de los campos, haciendo una suma de todos aquellos que sean null y poniendolos en una columna nueva creo que es una forma sencilla de entender. Se me ocurre jugar con una funcion mandandole el nombre la tabla y revisando su esquema desde ella para retornar el nombre de cada una pero estoy en el navegador del celular igual tienes la idea tambien con esto que te menciono; te dejo la forma sencilla

select *,((CASE WHEN a.Id is NULL THEN 1 ELSE 0 END)
        +(CASE WHEN a.UltimaVenta is NULL THEN 1 ELSE 0 END)) AS Nulos from [dbo].[Almacen] as a 

1voto

bl4z3r comentado

¿No te parece rebuscado? No es mas sencillo hacer:

SELECT
    COUNT(Columna1)
FROM
    [dbo].[Almacen]
WHERE
    Columna1 IS NULL

0voto

AdanCervera comentado

En realidad si se lee bien la pregunta el pide contar los nulos de una tupla, no de una columna lo cual de la forma en que lo planteas no es correcta; a no ser que interpretara mal la pregunta.

Por favor, accede o regístrate para responder a esta pregunta.

Otras Preguntas y Respuestas


...

Bienvenido a entre Desarrolladores, donde puedes realizar preguntas y recibir respuestas de otros miembros de la comunidad.

Conecta