2011-10-24 10 views
3

イムは、コードでSELECT CASEの結果を変数に保存する:MySQLはここで、SELECT CASEを使用する方法を学ぶが、私は非常によく理解していない

SET @vgls=1; 
SET @lgls=1; 


SET @st=SELECT CASE 
WHEN @[email protected] THEN "emp" 
WHEN @vgls>@lgls THEN "loc" 
WHEN @vgls<@lgls THEN "vis" END; 

SELECT @st; 

それは私に次のエラーを与えます:

[Err] 1064 - You have an error in your SQL syntax; check the manual that corresponds to you MySQL server version for the right syntax to use near 'SELECT CASE 
WHEN @[email protected] THEN "emp" 
WHEN @vgls>@lgls THEN "loc" 
WHEN @vg' at line 1 

答えて

5

あなたがアッシするSELECT ... INTO

SELECT 
... 
INTO var_name [, var_name]] 

の代わりsetを使用する必要があります変数へのSELECTの結果です。これはそれを行う必要があります:

SELECT CASE 
WHEN @[email protected] THEN "emp" 
WHEN @vgls>@lgls THEN "loc" 
WHEN @vgls<@lgls THEN "vis" END 
INTO @st; 
+0

ありがとうございます! –

関連する問題