Вы не можете использовать f.SC_Date
во внутреннем запросе таким образом - помните, что сначала будет запущен бит в скобках, а затем будет запущен бит снаружи.
Вам потребуетсяобъявить scores f
внутри этого оператора select, чтобы это работало.
Я ожидаю, что оно вам вообще не нужно - что-то вроде:
SELECT * from scores f
WHERE
SC_Id IN (
SELECT SC_Id FROM (
SELECT SC_Id from scores where DATE_FORMAT( SC_Date, "%Y%m" ) = DATE_FORMAT( SC_Date, "%Y%m" ) AND US_Id != 0 ORDER BY SC_Score DESC
LIMIT 3
) AS u )ORDER BY DATE_FORMAT( SC_Date, "%Y%m" ) DESC, SC_Score DESC
Должно работать, если я не 'Я ошибаюсь в ваших намерениях здесь.