Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Scegli dinamicamente la colonna nella query SQL

Prova questo:

DECLARE @var1 VARCHAR(20)
DECLARE @sql VARCHAR(255)

SET @var1 = 'Code'
SET @sql = 'select ' + QUOTENAME(@var1) + ' from [VoucherType] where [DeletedBy] is null and [AutoID] = 1'

EXEC sp_executesql @sql

Dovrai comporre una query dinamica ed eseguirla utilizzando sp_executesql

Per aggiungere altro sul lato "dinamico" delle cose, utilizzare le procedure memorizzate. Vedi qui per un esempio:

http://www.marten-online.com /database/execute-dynamic-sql-in-mssql.html

Cioè... se stai usando Microsoft SQL SERVER