문법 에러 확인 좀 부탁드려요. 0 4 1,985

by 이광영 [MySQL] 문법 [2012.08.23 10:10:11]


 delimiter //

set @a = 1;

 

if @a = 1 then

  select 'one';

else

  select 'unknown';

end if;

//

delimiter;

위와 같이 입력하면

[Err] 10064 - 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 'if @a = 1 then select 'one' at line 1

이런 에러 메시지가 나타납니다. 어느 부분이 문제여서 에러가 나는걸까요?

by Oracler [2012.08.23 13:15:32]
제가 MySQL은 잘 몰라서 문제를 해결해드리지는 못하지만 아마도 select 문에서 에러가 난 것 같습니다.

select 'one' 다음에 from 절 이하가 없네요. 그러니 완성된 select 문이 아니어서 문법 에러가 난 것입니다.


by 김정식 [2012.08.23 14:03:15]
@Oracler님 MySQL은 FROM절 이하가 없어도 실행이 됩니다.  ^^

by Oracler [2012.08.23 14:48:28]
아하 그렇군요.

by 무지개 [2012.08.23 15:24:00]
SELECT IF(@a = 1, 'one', 'unknown') AS r

이렇게 하면 안되나요? ^^

http://stackoverflow.com/questions/9916827/mysql-if-statement

이 글도 비슷한 경우같은데요.
댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입