Workbench에서 아래 SQL은 Ctrl+Shift+Enter를 누르면 잘 실행 됩니다.
SET @RowsPerPage = 10;
SET @PageNumber = 1;
SELECT @RowsPerPage, @PageNumber;
그런데 아래 SQL은 안됩니다.
SET @RowsPerPage = 10;
SET @PageNumber = 1;
SELECT JoinTable01ID, MainTableID, Col11, Col12, Col13, reg_dt
FROM jointable01
ORDER BY JoinTable01ID DESC
LIMIT @PageNumber, @RowsPerPage;
실행하면 아래와 같은 에러가 발생합니다.
Error Code: 1064. You have an error in your SQL syntax;
check the manual that corresponds to your MySQL server version for the right syntax to use
near '@PageNumber, @RowsPerPage' at line 4 0.000 sec
물론 아래와 같이 변수를 쓰지 않고 Limit 절에 숫자를 직접 넣어주면 잘 됩니다.
SELECT JoinTable01ID, MainTableID, Col11, Col12, Col13, reg_dt
FROM jointable01
ORDER BY JoinTable01ID DESC
LIMIT 1, 10;
변수가 Select 절에 들어가느냐 Limt 절에 들어가느냐의 차이인데 왜 안되는지 궁금합니다.
|