Usar una varaible para especificar la tabla

02/09/2005 - 21:43 por San | Informe spam
Quiero saber si es posible especificar en el from de un select el nombre de
una tabla usando una variable. Algo asi
declare @tabla nvarchar(20)
set @tabla='usuarios'
select * from @tabla

Gracias por sus comentarios
 

Leer las respuestas

#1 Alejandro Mesa
02/09/2005 - 21:58 | Informe spam
San,

No, no se puede referenciar una variable en la clausula "from" de la
sentencia "select". Puedes usar sql dinamico para lograr lo que quieres, pero
ese tipo de construccion no es recomendable en t-sql.

Ejemplo:

use northwind
go

declare @sql nvarchar(4000)
declare @tn sysname

set @tn = 'dbo.orders'
set @sql = 'select customerid, orderid, orderdate from ' @tn

exec sp_executesql
go

Las virtudes y maldades del SQL dinámico
http://www.hayes.ch/sql/sql_dinamico.html


AMB

"San" wrote:

Quiero saber si es posible especificar en el from de un select el nombre de
una tabla usando una variable. Algo asi
declare @tabla nvarchar(20)
set @tabla='usuarios'
select * from @tabla

Gracias por sus comentarios

Preguntas similares