Форматирование данных в новом столбце с помощью запроса на обновление - PullRequest
0 голосов
/ 19 декабря 2018

У меня есть два столбца «POI Year» и «POI SeqNum», они выглядят так:

|POI Year|POI SeqNum|new_col
|2005    |1         |
|2006    |17        |

Я пытаюсь вернуть год и seqnum, но мне также нужно добавить '30' какстрока и '.', поэтому я пытаюсь сформулировать запрос на обновление, в котором конечный результат будет выглядеть следующим образом:

|POI Year|POI SeqNum|new_col
|2005    |1         |2005.301
|2006    |17        |2006.317

Ответы [ 3 ]

0 голосов
/ 19 декабря 2018

Вы можете использовать to_char() для форматирования числа с ведущими нулями, а затем объединить его с годом:

select poi_year,
       poi_seqnum, 
       poi_year||'.'||to_char(poi_seqnum, 'FM00')
from the_table;
0 голосов
/ 19 декабря 2018

Добавление 300 в SeqNum может быть хитростью.

UPDATE yourtable
SET new_col = CONCAT("POI Year", '.', 300+"POI SeqNum")
0 голосов
/ 19 декабря 2018

Как то так?

select 
  poi_year,
  poi_seqnum,
  to_char(poi_year, '9999') || '.' || 
    to_char(300 + poi_seqnum, '999') as new_col
from my_table
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...