sql >> Base de Datos >  >> RDS >> Sqlserver

Altere dinámicamente el tipo de datos de la columna de nvarchar a decimal si se cumple una condición sql

Puede usar la vista de catálogo sys.columns para recuperar todas las columnas deseadas de su tabla y construir un ALTER declaración como una cadena:

SELECT 'ALTER TABLE tb1 ALTER COLUMN [' + name + '] Decimal(18,2) NULL'
FROM sys.columns
WHERE [object_id] = OBJECT_ID('tb1')
AND name LIKE 'ROE%'

Desde allí, puede tomar las consultas y ejecutarlas manualmente o abrir un CUSROR e itere cada instrucción para ejecutarlas con un EXEC llamar.