Cuente NULL en SQL Server 2008.
La función "Count" en TSQL devuelve el número de filas en una consulta. Sin embargo, esta función sólo contará estos registros en los que el campo no lee "NULL". Para contar con estos registros con las columnas que no tienen datos y por lo tanto se consideran "NULL", debe introducir otra función, NULLIF, a la consulta SQL. Función NULLIF tiene dos argumentos, que se reemplazarán con las expresiones o los números cuando se utiliza la función: devuelve un valor nulo si los dos argumentos son iguales, de lo contrario, devuelve los primeros argumentos.
Lo que necesita
SQL Server 2008
Haga clic en "Inicio", "Todos los programas" y luego en "SQL Server 2008". Haga clic en "SQL Server Management Studio" para seleccionarlo. Escriba su nombre de usuario y contraseña para iniciar sesión en el estudio de la gestión. Haga clic en "bases de datos" en el "Explorador de objetos" para ampliar la base de datos. Busque y haga clic en la base de datos deseada.
Haga clic en "Tablas" y haga clic en "Nueva tabla" para crear una nueva tabla denominada "artículos". Cree tres campos: "id", "name" y "sold_out" haciendo clic en el campo vacío y escriba un nombre para el campo. Haga clic en el "Tipo de datos" opciones desplegable junto al nombre del campo, y seleccione el tipo "varchar" para el campo "id". Asimismo establecer los campos "nombre" como tipo "varchar" y luego establecer el tercer campo de tipo "int".
Haga clic en "New Query" en el panel derecho de la ventana. Escriba el siguiente código:
Insertar en elementos (id, nombre) VALUES (1, "elemento1", Null)
Insertar en elementos (id, nombre) VALUES (2, "elemento2", 1)
Insertar en elementos (id, nombre) VALUES (3, "elemento3", 1)
Haga clic en "Ejecutar" para ejecutar la consulta. Este comando insertar tres registros en la tabla.
Escriba el siguiente código para contar el tema que no se ha vendido. La columna "sold_out" en la tabla "items" muestra si el artículo está agotado, con el valor "1" de la columna que indica un artículo está agotado y "0" indica el artículo todavía esté en stock.
Seleccione id,
(
COUNT (*) AS ITEM_COUNT,
)
(
Count (NULLIF (1, sold_out))
) AS item_not_sold_out
El valor de sold_out en el primer registro es NULL. La función NULLIF devuelve "1" para el primer registro. La función "Count" lo contará. El número de cuenta se registrará en una columna titulada "item_not_sold_out."
No hay comentarios:
Publicar un comentario