假设我们在表变量@tblMessageDetails
中有 10 行。如果其中任何一个失败,我需要单独获取失败的行完整数据。
这样做的目的是假设一行失败,我需要在删除错误后处理其他 9 行。
UPDATE tblDelivery
SET ArrivedDateTime = CONVERT(datetime, M.ArrivedDateTime, 113),MessageDetails=MessageDetails1
FROM tblDelivery
INNER JOIN @tblMessageDetails M ON M.PKDelivery = tblDelivery.PKDelivery
有谁知道如何解决这个问题?
使用Isdate()
函数过滤不良记录。试试这个。
UPDATE tblDelivery
SET ArrivedDateTime = CONVERT(DATETIME, M.ArrivedDateTime, 113)
FROM tblDelivery
INNER JOIN (SELECT ArrivedDateTime,
PKDelivery
FROM @tblMessageDetails
WHERE Isdate(ArrivedDateTime) = 1) M
ON M.PKDelivery = tblDelivery.PKDelivery