Как объединить два столбца с псевдонимом PLSQL - PullRequest
0 голосов
/ 25 марта 2020

Я только что начал с PL / SQL, и мне не очень понятна концепция конкатенации, поэтому теперь мне нужно объединить результат двух столбцов, которые имеют псевдонимы, и показать результат это в одном.

Ниже приведены запросы, которые я делаю с соответствующими псевдонимами:

(SELECT SPRCMNT_TEXT
        FROM SPRCMNT
        WHERE SPRCMNT_PIDM = SHRDGMR_PIDM
        AND SPRCMNT_CMTT_CODE = '15'
        AND SPRCMNT_ORIG_CODE = 'FTDF') FOLIO_CONTROL,

(SELECT REGEXP_SUBSTR(SPRCMNT_TEXT_NAR, 'Profesionista="([^"]+)"', 1, 1, NULL, 1)
        FROM SPRCMNT
        WHERE SPRCMNT_PIDM = SHRDGMR_PIDM
        AND SPRCMNT_CMTT_CODE = '15'
        AND SPRCMNT_ORIG_CODE = 'FTDF') PROFESIONISTA,

Мне нужно объединить псевдоним PROFESIONISTA+FOLIO_CONTROL, и его результат отобразит его в виде новый столбец.

1 Ответ

1 голос
/ 25 марта 2020

Оба запроса одинаковы для предложения from, поэтому я думаю, что вы хотите:

SELECT 
    SPRCMNT_TEXT 
    || REGEXP_SUBSTR(SPRCMNT_TEXT_NAR, 'Profesionista="([^"]+)"', 1, 1, NULL, 1) res
FROM SPRCMNT
WHERE 
    SPRCMNT_PIDM = SHRDGMR_PIDM 
    AND SPRCMNT_CMTT_CODE = '15' 
    AND SPRCMNT_ORIG_CODE = 'FTDF'

Это дает вам результат с одним столбцом, называемым res, с двумя объединенные строки (что оператор || делает в Oracle).

Возможно, вы захотите добавить разделитель:

    SPRCMNT_TEXT 
    || ' -- '
    || REGEXP_SUBSTR(SPRCMNT_TEXT_NAR, 'Profesionista="([^"]+)"', 1, 1, NULL, 1) res
...