Setear una varible a través de un execute
Esoty tratando de asignar a una variable un valor tras ejecuatar una consulta. He adaptado m trabajo a la base de datos Neptuno
USE Neptuno
DECLARE @iNroClientes as int;
DECLARE @iNroPedidos as int;
DECLARE @strTabla as varchar(25);
DECLARE @strSql as nvarchar(500);
SET @strTabla='Pedidos'
SET @iNroPedidos=5893 --Para verificar que cambie
SET @strSql = '(SELECT count(*) as contador FROM '+@strTabla+' WHERE IdCliente='''+'alfki'+''')'
--SET @strSql = ' SET @iNroPedidos= '+@strSql
--PRINT @strSql
EXECUTE sp_executesql @iNroPedidos=@strSql
print 'Nro pedidos: '
print @iNroPedidos
La variable @iNroPedidos, me sigue imprimiendo 5893.
¿Cómo podría hacer?
USE Neptuno
DECLARE @iNroClientes as int;
DECLARE @iNroPedidos as int;
DECLARE @strTabla as varchar(25);
DECLARE @strSql as nvarchar(500);
SET @strTabla='Pedidos'
SET @iNroPedidos=5893 --Para verificar que cambie
SET @strSql = '(SELECT count(*) as contador FROM '+@strTabla+' WHERE IdCliente='''+'alfki'+''')'
--SET @strSql = ' SET @iNroPedidos= '+@strSql
--PRINT @strSql
EXECUTE sp_executesql @iNroPedidos=@strSql
print 'Nro pedidos: '
print @iNroPedidos
La variable @iNroPedidos, me sigue imprimiendo 5893.
¿Cómo podría hacer?