Разделить запись на несколько столбцов после Row_number и Partition By - PullRequest
1 голос
/ 18 марта 2019

Я хочу, чтобы мой результат отображался в 4 столбцах.Вот как я сделал свое кодирование.

SELECT T.MT_CARD_TYP_ID,
       ROW_NUMBER() OVER (PARTITION BY T.APP_ID ORDER BY T.DT_CREATE) AS RN
FROM T_CS_FAC_CC T 
WHERE app_id = '8F9A97B0CB5349429C44F15830EDC18F';

Что мне делать на следующем шаге?Может ли кто-нибудь из профессионалов помочь мне?*This is how I want the result look like.

1 Ответ

1 голос
/ 18 марта 2019

Вы можете попытаться использовать функцию с отягчающими условиями.

SELECT app_id,
       MAX(CASE WHEN RN = 1 THEN MT_CARD_TYP_ID END),
       MAX(CASE WHEN RN = 3 THEN MT_CARD_TYP_ID END),
       MAX(CASE WHEN RN = 2 THEN MT_CARD_TYP_ID END),
       MAX(CASE WHEN RN = 4 THEN MT_CARD_TYP_ID END)
FROM (
    SELECT T.MT_CARD_TYP_ID, ROW_NUMBER() OVER(PARTITION BY T.APP_ID ORDER BY T.DT_CREATE) AS RN 
    FROM T_CS_FAC_CC T 
    where app_id='8F9A97B0CB5349429C44F15830EDC18F'
)t1
GROUP BY app_id 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...