我有两张桌子 - ' BAT'和' SET'。
SET Table包含以下列:
ID(主键)
QC_RUN_ID
BAT表包含以下列:
BATSET_ID(这是将BAT映射到SET的外键)
CREATED_DATE
DTE_ID
BAT_NAME
ETA
以下3个陈述合理:
声明1:
select to_char(CREATED_DATE,'DDMONYYY') AS PART1 from BAT WHERE DTE_ID = '33782451' AND BAT_NAME LIKE '110_170_ECM 140_%';
结果(PART1):
25JUL016
声明2:
SELECT SET.QC_RUN_ID AS PART2
FROM SET
INNER JOIN BAT
ON SET.ID=BAT.BATSET_ID
WHERE BAT.DTE_ID = '33782451' AND BAT.BAT_NAME LIKE '110_170_ECM 140_%'
结果(PART2):
7947492
陈述3:
SELECT SUBSTR(t.ETA, INSTR(t.ETA, '=')+1, (INSTR(t.ETA, 'type')-INSTR(t.ETA, '='))-2) AS PART3
FROM BAT t
WHERE t.DTE_ID = '33782451' AND t.BAT_NAME LIKE '110_170_ECM 140_%'
结果(PART3):
153464685
我的要求:
我必须将PART1,PART2和PART3结果与使用单个查询之间的斜杠连接起来,并将其显示为带有SELECT语句的另一列。
结果输出应该是这样的:
25JUL016\7947492\153464685
我该怎么做?请建议。感谢。
答案 0 :(得分:2)
如果我正确地跟踪查询,那么您只需要修改第二个以获得您想要的内容:
text, link, and image
如果这三个查询不可组合,你可以这样做:
SELECT (to_char(t.CREATED_DATE,'DDMONYYY') || '/' ||
SET.QC_RUN_ID || '/' ||
SUBSTR(t.ETA, INSTR(t.ETA, '=')+1, (INSTR(t.ETA, 'type')-INSTR(t.ETA, '='))-2)
)
FROM SET INNER JOIN
BAT t
ON SET.ID = t.BATSET_ID
WHERE t.DTE_ID = '33782451' AND t.BAT_NAME LIKE '110_170_ECM 140_%';
但我不认为子查询是必要的。