프로그래밍/DB, SQL, EF
[MSSQL] 'TOP'를 사용할때 변수를 넣어 사용하기
당근천국
2014. 3. 20. 15:00
별생각없이
Select TOP @nTemp From @table;
이렇게 작성 했더니
'[변수]'근처의 구문이 잘못되었습니다. 필요 REAL, INTEGER, NUMERIC 또는 '('.
이런 에러가 ㅡ,.ㅡ;;
에라이~
1. 'TOP'에 변수를 사용할 수 있다.
그래서 그런지 가끔 'TOP'에는 변수를 쓸 수 없다고 생각하는 사람들이 있습니다.
하지만 가능합니다!
(참고 : MSDN - TOP(Transact-SQL))
MSDN에 보면 '2.TOP에 변수 사용'에서 변수를 소괄호(())로 감싸서 사용하는 것을 알수 있죠.
2. 'TOP'에 변수 사용하기
Select TOP (@nTemp) From @table;
괄호만 추가하면 상수를 넣을때와 똑같이 동작 합니다.
마무리
그리고 원래 그렇게 써왔죠 ㅎㅎㅎㅎ