Проблема с подозрением на команду MAX в Databricks - PullRequest
0 голосов
/ 03 августа 2020

Выполняется простой запрос

select COL1
from ( 
    select *
    , monotonically_increasing_id() as row_id 
    from db00sparkmigration_landingzone_template.tbl_Ingestion_note_load_errors_pipes 
    ) aa
where row_id > 1 and row_id < max(row_id)

, но появляется следующая ошибка, есть идеи?

Ошибка в операторе SQL: UnsupportedOperationException: невозможно оценить выражение: max ( input [1, bigint, false])

1 Ответ

0 голосов
/ 03 августа 2020

Я бы порекомендовал здесь row_number() - однако вам нужен столбец, определяющий порядок строк:

select col1
from ( 
    select 
        t.*,
        row_number() over(order by <ordering_col> asc)  rn_asc,
        row_number() over(order by <ordering_col> desc) rn_desc
    from db00sparkmigration_landingzone_template.tbl_Ingestion_note_load_errors_pipes t
) aa
where 1 not in (rn_asc, rn_desc)
...