SQL Server에서 동적 쿼리에서 변수를 사용합니다
-
12-12-2019 - |
문제
이 쿼리에서 수행하려고하는 것은 CustomerTransaction 테이블에서 지정된 컷오프 번호보다 오래된 모든 행을 가져 오려고 노력하고 있습니다.
@Cutoffnumber INT
SELECT @SQL = 'SELECT * FROM customertransaction WHERE DATEDIFF(DD, Transactiondate, GETDATE()) > @Cutoffnumber '
.
그러나 아래 오류가 발생합니다. 이것은 동적 SQL 쿼리입니다.
스칼라 변수 "@Cutoffnumber"
를 선언해야합니다.
어떻게해야합니까?
해결책
다른 팁
Decalre @Cutoffnumber INT
Set @Cutoffnumber = @someValue
SELECT @SQL = 'SELECT * FROM customertransaction WHERE DATEDIFF(DD, Transactiondate, GETDATE()) >' + @Cutoffnumber
.
동적 SQL 없이이 작업을 수행 할 수있는 것처럼 보입니다.
Declare @Cutoffnumber INT
Set @Cutoffnumber = @someValue
SELECT * FROM customertransaction WHERE DATEDIFF(DD, Transactiondate, GETDATE()) > @Cutoffnumber
. 제휴하지 않습니다 StackOverflow