Oracle: разбивка данных - PullRequest
       1

Oracle: разбивка данных

0 голосов
/ 28 февраля 2019

Мне нужно получить запрос для получения следующих данных:

enter image description here

для отображения, как показано ниже:

enter image description here

в основном добавление нового столбца Vehicle_size для каждого значения, указанного в соответствующем столбце.например.

kay_SM = Vehicle_size(Small)
kay_LG= Vehicle_size(Large)
Lola_SM= Vehicle_size(Small)
lola_LG= Vehicle_size(Large)

одновременно создайте новый столбец: конкурент, определяющий, является ли он для "lola" или "kay"

1 Ответ

0 голосов
/ 28 февраля 2019

В этом случае вы можете использовать unpivot.

SELECT U.RENTAL_DATE,U.OUTBOUND,U.INBOUND,
REGEXP_SUBSTR(VEHICLE_COMPETITIOR, '[^_ ]+', 1, 2) AS VEHICLE_SIZE,
REGEXP_SUBSTR(VEHICLE_COMPETITIOR, '[^_ ]+', 1, 1) AS COMPETITIOR,
RATE 
FROM T
UNPIVOT (
          RATE FOR VEHICLE_COMPETITIOR IN (KAY_SM  AS 'Kay_Small',
          KAY_LG  AS 'Kay_Large',LOLA_SM AS 'Lola_Small' ,LOLA_LG AS 'Lola_Large')
        ) U
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...