我正在尝试将 bacclaim 表中的 loss_dt 更新为 claim_id 上的其他表 bactrans 中的 trans_dt,其中 loss_Dt >trans_dt
Posted
技术标签:
【中文标题】我正在尝试将 bacclaim 表中的 loss_dt 更新为 claim_id 上的其他表 bactrans 中的 trans_dt,其中 loss_Dt >trans_dt【英文标题】:I am trying to update loss_dt in bacclaim table to trans_dt from other table bactrans on claim_id where loss_Dt >trans_dt 【发布时间】:2019-07-03 15:02:52 【问题描述】:我将 loss_dt 设置为 trans_dt 其中loss_Dt >trans_Dt
。 loss_Dt
在 bacclaim
中,trans_Dt
在 bactrans
中都有 claimid
共同
UPDATE bacclaim t1
SET (t1.loss_dt) = (SELECT t2.trans_dt
FROM bactrans t2
WHERE t1.claim > t2.claim)
WHERE EXISTS (
SELECT 1
FROM bactrans t2
WHERE t1.claim = t2.claim and t1.loss_dt>t2.trans_dt );
【问题讨论】:
请edit 提出minimal reproducible example 的问题,包括:表的DDL 语句;一些样本数据的 DML 语句;以及您的预期输出。此外,在 bacclaim` 中的claimid
和 inbactrans
之间是否总是最多存在一对一的映射,或者 bactrans
中的多行是否与 bacclaim
中的一行匹配?
【参考方案1】:
MERGE
声明可能是您正在寻找的:
MERGE INTO bacclaim dst
USING bactrans src
ON ( src.claimid = dst.claimid )
WHEN MATCHED THEN
UPDATE SET loss_td = src.trans_dt
WHERE src.loss_td > dst.trans_dt
【讨论】:
以上是关于我正在尝试将 bacclaim 表中的 loss_dt 更新为 claim_id 上的其他表 bactrans 中的 trans_dt,其中 loss_Dt >trans_dt的主要内容,如果未能解决你的问题,请参考以下文章
PyTorch:_thnn_nll_loss_forward 未针对类型 torch.LongTensor 实现
Tensorflow 和 Scikitlearn log_loss 函数实现的区别