Разбор значений и разбиение на основе условий в таблицах DB2 - PullRequest
0 голосов
/ 01 апреля 2019

У меня есть 2 таблицы.В первой таблице Table1 у меня есть столбец с именем DOTINCS, значения которого следующие:

PARID
1000150004
1152611254
2015620001

Теперь у меня есть еще одна таблица DTINCS с 5 столбцами

BORO    BLOCK   LOT
------------------------
1        15       4
1     15261    1254        
2      1562       1 

Я хочу присоединиться к этим 2PARID таблицы в DOTINCS состоит из 10 цифр и разбивается на 3 столбца в таблице DTINCS путем удаления начальных нулей.BORO состоит из 1 цифры, блока 5 и серии 4.

Как мне проанализировать PARID таким образом, чтобы Boro был 1 цифрой, а Block I взял 5 цифр и взял его целую часть, то же самое с лотом, 4 цифрами и только целую часть и исключил ведениенули?заранее спасибо.

1 Ответ

2 голосов
/ 01 апреля 2019

Я превратил их в струны, потому что мог. Если они хранятся в виде чисел, вы можете сначала привести их к строкам.

with vals (col1) as (
  values ('1000150004'), 
         ('1152611254'), 
         ('2015620001')
) 
select int(left(col1,1)) boro, 
       int(substr(col1,2,6)) block, 
       int(right(col1, 4)) lot 
from vals;

BORO        BLOCK       LOT        
----------- ----------- -----------
          1          15           4
          1      152611        1254
          2       15620           1

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