Bạn có thể di chuyển quá trình khởi tạo các biến phiên do người dùng xác định sang bảng Có nguồn gốc và Cross Join
với (các) bảng khác của bạn:
SELECT SUBSTRING_INDEX(@input, ' ', (@count) * 2), ' ', -1) AS xyz,
som_cnt AS `count`
FROM abc
CROSS JOIN (SELECT @count := 0,
@input := '22:4,33:4'
) AS user_init_vars