Ниже приведено описание BigQuery Standard. SQL
Использование таких функций, как DENSE_RANK (), ROW_NUMBER () и т. Д. Для больших объемов данных обычно приводит к ошибке, например, превышению лимита ресурсов.
Зависит от вашего реального варианта использования - вы можете рассмотреть следующие альтернативы:
#standardSQL
SELECT *
FROM `project.dataset.table`
ORDER BY salary DESC
LIMIT 1 OFFSET 4
ИЛИ
#standardSQL
SELECT AS VALUE ARRAY_AGG(t ORDER BY salary DESC LIMIT 5)[SAFE_OFFSET(4)]
FROM `project.dataset.table` t
Обе версии, указанные выше, должны дать вам рекорд с 5-й по величине зарплатой