Usando una variable en consulta dinámica en SQL Server
-
12-12-2019 - |
Pregunta
Lo que estoy tratando de hacer de esta consulta es que estoy tratando de obtener todas las filas que son más antiguas que el número de ClotoffNumber especificado de la Tabla de Atención de clientes:
@Cutoffnumber INT
SELECT @SQL = 'SELECT * FROM customertransaction WHERE DATEDIFF(DD, Transactiondate, GETDATE()) > @Cutoffnumber '
Pero estoy obteniendo el siguiente error, tenga en cuenta que esta es una consulta de SQL dinámica.
debe declarar la variable escalar "@CutoffNumber"
¿Cómo debo ir?
Solución
Mire en sp_executesql
Otros consejos
Decalre @Cutoffnumber INT
Set @Cutoffnumber = @someValue
SELECT @SQL = 'SELECT * FROM customertransaction WHERE DATEDIFF(DD, Transactiondate, GETDATE()) >' + @Cutoffnumber
Aunque parece que podría hacer esto sin SQL dinámico:
Declare @Cutoffnumber INT
Set @Cutoffnumber = @someValue
SELECT * FROM customertransaction WHERE DATEDIFF(DD, Transactiondate, GETDATE()) > @Cutoffnumber
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow