Почему я не могу использовать плотность_ранков для SQL «рейтинговых баллов»?

0

Я использую функцию dense_rank в SQL для решения проблемы с ранжированием рангов (https://leetcode.com/problems/rank-scores/description/):

select Score, dense_rank() over (order by Score) Rank
from Scores
order by Score desc

Это всегда дает мне следующую ошибку:

Line 2: SyntaxError: near '(order by Score) Rank
from Scores
order by Score desc'

Интересно, как правильно ответить на этот вопрос? Большое спасибо!

Кроме того, я понял, что большинство людей используют ответ, не используя функцию DENSE_RANK, что довольно сбивает с толку, поскольку для меня DENSE_RANK - это, вероятно, самый интуитивный способ решения проблемы. У кого-нибудь есть идея? Еще раз спасибо!

  • 1
    Не все базы данных поддерживают dense_rank() . Предположительно, ваш нет.
  • 0
    @GordonLinoff Я использую Mysql. Он не поддерживает любую оконную функцию, если нет последних обновлений.
Показать ещё 2 комментария
Теги:
dense-rank
window-functions

1 ответ

0
Лучший ответ

Отредактированный ответ

Мой SQL не поддерживает dense_rank, но поддерживает другие функции окна. Обратитесь к этому ответу за помощью.

В качестве альтернативы вы можете запустить код на другом SQL-сервере

  • 0
    , , До версии 8.0 MySQL вообще не поддерживал оконные функции.
  • 1
    MySQL 8 поддерживает плотность: dev.mysql.com/doc/refman/8.0/en/… наряду с другими оконными функциями.
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню