@variables không phải là DECLARED .
Một trong hai:
DECLARE user_same BOOLEAN;
SELECT 1 INTO user_same WHERE ...
hoặc
SELECT @user_same := 1 WHERE ...
Tốt hơn, điều này tránh sự cần thiết của biến.
IF (EXISTS SELECT * FROM ...)
Ngoài ra, không sử dụng cấu trúc IN ( SELECT ... ); thường tốt hơn nếu sử dụng WHERE EXISTS ( SELECT * FROM ... ) hoặc JOIN ... ON ... .
(Có thể có nhiều vấn đề hơn sau khi khắc phục những vấn đề đó.)