在配置单元中不连续的行中用负ID号替换null

时间:2019-04-21 17:49:37

标签: hiveql

我的数据库中有此表:

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

我想将此表转换为用连续的负ID替换空值的表:

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

任何人都知道如何在蜂巢中做到这一点?

1 个答案:

答案 0 :(得分:0)

以下方法有效

从database_name.table_name中选择coalcece(id,concat('-',ROW_NUMBER()OVER(按id划分)))作为id,desc;