Ponieważ to FROM (SELECT @foo AS foo) jest oceniany przed tym @foo := 1 . Zasadniczo wszystko w FROM zostanie ocenione przed SELECT.
Właściwie powinno być puste, ale zgaduję, że przypisałeś swojej zmiennej sesji wartość zero gdzie indziej.
Ponieważ to FROM (SELECT @foo AS foo) jest oceniany przed tym @foo := 1 . Zasadniczo wszystko w FROM zostanie ocenione przed SELECT.
Właściwie powinno być puste, ale zgaduję, że przypisałeś swojej zmiennej sesji wartość zero gdzie indziej.