Obtener el número de registros de una tabla sin hacer select count(*)

16 10 2008

Una forma de obtener el numero de registros de una tabla en SQLServer aparte del clásico:

SELECT COUNT(*)
  FROM NombreTabla

es consultando la tabla del systema sysindexes del siguiente modo:

SELECT rows
  FROM sysindexes
  WHERE id = OBJECT_ID('NombreTabla') AND indid < 2

La ventaja de ésta forma es que se evita que se recorra la tabla o algún índice para obtener el número exacto de registros, esto es útil en tablas con millones de registros, al hacerlo de la primera forma se lleva tiempo en devolver el resultado, afectando el desempeño.

Nota: Esto es útil cuando no se requiere saber el número exacto de registros de una tabla, sin embargo, es necesario tener activado la opcion de creación automática de estadísticas en la Base de datos.


Acciones

Información

Deja un comentario

Fill in your details below or click an icon to log in:

Logo de WordPress.com

You are commenting using your WordPress.com account. Log Out / Cambiar )

Twitter picture

You are commenting using your Twitter account. Log Out / Cambiar )

Facebook photo

You are commenting using your Facebook account. Log Out / Cambiar )

Connecting to %s




Seguir

Get every new post delivered to your Inbox.