номер строки в Apache балка SQL - PullRequest
0 голосов
/ 19 апреля 2020

Я пытаюсь сгенерировать row_number, используя Apache Луч SQL с кодом ниже:

PCollection<Row> rwrtg =
        PCollectionTuple.of(new TupleTag<>("trrtg"), rrtg)
                        .apply(SqlTransform.query("select appId, row_number() over (partition by appId order by rating asc) as issue_rank from trrtg"));

Но получаю ошибку ниже:

java.lang.RuntimeException: cannot translate call ROW_NUMBER() OVER (PARTITION BY $t0 ORDER BY $t1 ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW)

Не могли бы вы посоветуйте как это исправить?

1 Ответ

2 голосов
/ 20 апреля 2020

Beam SQL поддерживает два диалекта: -

  1. Beam Calcite - подробности можно найти здесь относительно поддерживаемых операторов.
  2. Zeta SQL - Подробности можно найти здесь относительно поддерживаемых операторов

Оба эти диалекта сегодня не поддерживают аналитическую функцию row_number (). Следовательно, вы получаете ошибку.

...