Заменить ноль на отрицательный номер в непоследовательных строках улья - PullRequest
0 голосов
/ 21 апреля 2019

У меня есть эта таблица в моей базе данных:

| id   | desc |
|-------------|
|  1   |   A  |
|  2   |   B  |
| NULL |   C  |
|  3   |   D  |
| NULL |   D  |
| NULL |   E  |
|  4   |   F  |
---------------

И я хочу преобразовать эту таблицу в таблицу, которая заменяет нули последовательными отрицательными идентификаторами:

| id   | desc |
|-------------|
|  1   |   A  |
|  2   |   B  |
| -1   |   C  |
|  3   |   D  |
| -2   |   D  |
| -3   |   E  |
|  4   |   F  |
---------------

Кто-нибудь знает, как я могу сделать это в улье?

1 Ответ

0 голосов
/ 22 апреля 2019

Ниже работает подход

выберите coalesce (id, concat ('-', ROW_NUMBER () OVER (раздел по идентификатору))) в качестве id, desc из database_name.table_name;

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...