如何在SQL Server中检查和更新不同的表



我想写一个查询,完成这些规则:

  • 从Daily_Proc表中读取(where CreatedDate = 06/06/2022 AND Status = Processed)记录
  • 使用">MID"检查是否有特定的记录也存在于Lit_Hold_Err表中和">"来源;列值。
  • 如果Lit_Hold_Err表中存在特定的记录,则从Processed"更新Status">Error-Retry"inDaily_Proctable.

我能做第一步和第二步,但不知道如何做第三步。

SELECT * 
FROM Daily_Proc
WHERE CreatedDate > '06/06/2022 0:00:00'
AND Status = 'Processed'
AND (MID in (SELECT MID
FROM Lit_Hold_Err)
AND Source In(Select Source
From Lit_Hold_Err))

Daily_Proc表:

<表类>持有中期源CreateDate状态tbody><<tr>我JELEEKJELEEK@gmail.com06/03/2022新《KEKELOKEKELO@gmail.com06/06/2022处理泽ZEKEKEZEKEKE@gmail.com06/06/2022处理

您可能希望使用JOIN操作构建您的UPDATE语句,该操作匹配Daily_ProcLit_Hold_Err上的MIDSource列共享的两个表DailyProc的其他条件。CreatedDateDailyProc。状态可以定位在WHERE语句中。

UPDATE Daily_Proc 
SET Status = 'Error-Retry'
FROM       Daily_Proc 
INNER JOIN Lit_Hold_Err
ON Daily_Proc.MID = Lit_Hold_Err.MID
AND Daily_Proc.Source = Lit_Hold_Err.Source
WHERE Daily_Proc.CreatedDate = '06/06/2022' 
AND Daily_Proc.Status = 'Processed';

点击这里查看演示。

相关内容

  • 没有找到相关文章

最新更新