将 'select' 语句的结果添加到我从其他几个表构建的表中



我是SQL新手。我有一个查询,它以集合格式为表中的每一行返回时间戳。查询是:

"

select to_char(create_ts, 'HH24:MI:SS') from 
SCHEMA.TABLE

"

我也有一个表,我正在从其他表中获取列,并使用内部连接来匹配基于共享列&数据。我现在需要以相同的方式将上述时间戳逻辑添加到此表中,即仅为匹配的行带来结果时间戳。到目前为止,我正在构建的表的代码是:

"

select A.*,
A.TRANSACTION_ID,
B.AMOUNT,
B.CHARGE_ID,
C.CHARGE_TYPE_ID,
D.CHARGE_GROUP,
E.EXCHANGE_ID,
E.TRADE_DATE
FROM SCHEMA.ESTIMATES A
left join SCHEMA.CHARGES B
ON A.ESTIMATE_ID = B.ESTIMATE_ID
left join SCHEMA.IRECHARGES C
ON B.CHARGE_ID = C.CHARGE_ID
left join SCHEMA.chargetypes D
ON C.CHARGE_TYPE_ID = D.CHARGE_TYPE_ID
left join SCHEMA.TRADE_TRANSACTIONS E
ON A.TRANSACTION_ID = E.TRANS_ID

"

我不能像刚才那样在上面再加一行,比如"F。select to_char(create_ts, 'HH24:MI:SS') from schema . table;

任何想法?

您希望使用Subquery这是在另一个查询中使用查询。使用JOIN和SELECT。

这能解决你的问题吗?

SELECT
A.*,
A.TRANSACTION_ID,
B.AMOUNT,
B.CHARGE_ID,
C.CHARGE_TYPE_ID,
D.CHARGE_GROUP,
E.EXCHANGE_ID,
E.TRADE_DATE,
timestamp_table.timeformated
FROM SCHEMA.ESTIMATES A
LEFT JOIN SCHEMA.CHARGES B ON (A.ESTIMATE_ID = B.ESTIMATE_ID)
LEFT JOIN SCHEMA.IRECHARGES C ON (B.CHARGE_ID = C.CHARGE_ID)
LEFT JOIN SCHEMA.chargetypes D ON (C.CHARGE_TYPE_ID = D.CHARGE_TYPE_ID)
LEFT JOIN SCHEMA.TRADE_TRANSACTIONS E ON (A.TRANSACTION_ID = E.TRANS_ID)
LEFT JOIN(
SELECT to_char(create_ts, 'HH24:MI:SS') as timeformated, matchID
FROM SCHEMA.TABLE
) as timestamp_table ON (A.matchID = timestamp_table.matchID)

注意:使用缩进良好的代码

更容易工作

最新更新