Listado completo de tutoriales
35 - Contar registros (count_big) |
Retorna la cantidad de registros. Es similar a la función "count(*)", la diferencia es que "count_big" retorna un valor "bigint" y "count", un "int".
"count_big(*)" cuenta la cantidad de registros de una tabla, incluyendo los valores nulos y duplicados.
"count_big(CAMPO)" retorna la cantidad de registros cuyo valor en el campo especificado entre paréntesis no es nulo.
"count_big(distinct CAMPO)" retorna la cantidad de registros cuyo valor en el campo especificado no es nulo, sin considerar los repetidos.
Averiguemos la cantidad de libros usando la función "count_big()":
select count_big(*) from libros;
Note que incluye todos los libros aunque tengan valor nulo en algún campo.
Contamos los libros de editorial "Planeta":
select count_big(*) from libros where editorial='Planeta';
Contamos los registros que tienen precio (sin tener en cuenta los que tienen valor nulo):
select count_big(precio) from libros;
Contamos las editoriales (sin repetir):
select count_big(distinct editorial) from libros;
Ingresemos el siguiente lote de comandos en el SQL Server Management Studio:
if object_id ('libros') is not null drop table libros; create table libros( codigo int identity, titulo varchar(40) not null, autor varchar(20) default 'Desconocido', editorial varchar(20), precio decimal(6,2), primary key(codigo) ); insert into libros values('El aleph','Borges','Emece',15.90); insert into libros values('Antología poética','Borges','Planeta',null); insert into libros values('Alicia en el pais de las maravillas','Lewis Carroll',null,19.90); insert into libros values('Matematica estas ahi','Paenza','Siglo XXI',15); insert into libros values('Martin Fierro','Jose Hernandez',default,40); insert into libros values('Aprenda PHP','Mario Molina','Nuevo siglo',null); insert into libros values('Uno','Richard Bach','Planeta',20); select count_big(*) from libros; select count_big(*) from libros where editorial='Planeta'; select count_big(precio) from libros; -- Contamos las editoriales (sin repetir): select count_big(distinct editorial) from libros;