SQL Server - procedimiento almacenado para contar los registros de varias tablas

 
Vista:
sin imagen de perfil
Val: 5
Ha aumentado su posición en 22 puestos en SQL Server (en relación al último mes)
Gráfica de SQL Server

procedimiento almacenado para contar los registros de varias tablas

Publicado por Victor (3 intervenciones) el 16/01/2020 20:13:50
buenas tardes, espero me puedan ayudar, tengo tres tablas con los nombres Clientes, Empleados y Productos, necesito un PROCEDIMIENTO ALMACENADO que me permita contar los registros de las tres tablas y guardar esos resultados en una tabla nueva con los campos tabla y registros. algo así...

TABLAS

Nombre_Tabla | Registros
Clientes | 3
Empleados | 5
Productos | 10

tengo este query que me crea la consulta que quiero y me entrega exactamente el resultado que espero solo que me hace falta crear la tabla para que guarde esos resultados.

1
2
3
4
5
6
7
8
9
10
SELECT
    sysobjects.Name AS Tabla
    , sysindexes.Rows AS Registros
FROM
    sysobjects
    INNER JOIN sysindexes
    ON sysobjects.id = sysindexes.id
WHERE
    type = 'U'
    AND sysindexes.IndId < 2

Les agradecería mucho la ayuda
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 32
Ha aumentado 1 puesto en SQL Server (en relación al último mes)
Gráfica de SQL Server

procedimiento almacenado para contar los registros de varias tablas

Publicado por Luis Horacio (13 intervenciones) el 16/01/2020 20:19:17
Buenas tardes, la consulta puede ser así:

Si la quiere almacenar en una tabla temporal (base datos temdb)

1
2
3
4
5
6
7
8
9
SELECT sysobjects.Name AS Tabla , sysindexes.Rows AS Registros
into $<NombreTabla>
FROM
sysobjects
INNER JOIN sysindexes
ON sysobjects.id = sysindexes.id
WHERE
type = 'U'
AND sysindexes.IndId < 2

Si quiere que la consulta genere una tabla en la base de datos actual

1
2
3
4
5
6
7
8
9
SELECT sysobjects.Name AS Tabla , sysindexes.Rows AS Registros
into <NombreTabla>
FROM
sysobjects
INNER JOIN sysindexes
ON sysobjects.id = sysindexes.id
WHERE
type = 'U'
AND sysindexes.IndId < 2
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 5
Ha aumentado su posición en 22 puestos en SQL Server (en relación al último mes)
Gráfica de SQL Server

procedimiento almacenado para contar los registros de varias tablas

Publicado por Victor (3 intervenciones) el 16/01/2020 20:34:34
muchas gracias, si me sirvió pero con el pequeño detalle que me crea una tabla con el nombre que le asigno y también la contabiliza :)

Clientes 4
Empleados 3
Productos 10
Tabla 3
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 32
Ha aumentado 1 puesto en SQL Server (en relación al último mes)
Gráfica de SQL Server

procedimiento almacenado para contar los registros de varias tablas

Publicado por Luis Horacio (13 intervenciones) el 16/01/2020 21:12:34
Buenas tardes, entonces creela temporal como la primera que te dije con el signo pesos ($)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 5
Ha aumentado su posición en 22 puestos en SQL Server (en relación al último mes)
Gráfica de SQL Server

procedimiento almacenado para contar los registros de varias tablas

Publicado por Victor (3 intervenciones) el 16/01/2020 21:48:28
me funciono excelente!! muchas gracias :)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar