sql - 如何连接具有别名 PLSQL 的两列
问题描述
我刚从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
并将其结果显示在一个新列中。
解决方案
除了子句之外,这两个查询都是相同的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