J'ai rencontré le même problème, mais je pense savoir ce qui cause la confusion. Si vous utilisez MySQL Query Analyzer, vous pouvez très bien le faire :
SELECT myvalue
INTO @myvar
FROM mytable
WHERE anothervalue = 1;
Cependant, si vous placez cette même requête dans MySQL Workbench, une erreur de syntaxe sera générée. Je ne sais pas pourquoi ils seraient différents, mais ils le sont.
Pour contourner le problème dans MySQL Workbench, vous pouvez réécrire la requête comme ceci :
SELECT @myvar:=myvalue
FROM mytable
WHERE anothervalue = 1;