我有这个 UPDATE 查询
UPDATE table SET
col2 = ( CASE WHEN ( col1 <> 0 AND col2 = 0 ) THEN val1 ELSE col2 END ),
col1 = ( CASE WHEN ( col1 = 0 ) THEN val1 ELSE col1 END )
我的问题是脚本的设置方式是一个用户可以访问它两次,因此val1
将在col1 and col2
.
我想在添加之前检查val1
是否val1
已添加到其中一个,col1
或者col2
如果它存在于任一列中,则不要更新列。val1 = 用户 ID 目前可能会发生这种情况,用户 1 和 2 都可以访问此更新脚本,因此如果他们中的任何一个访问它两次,他们的 ID 将同时放在 col1 和 col2 中,这是我的问题。
id col1 col2
1 val1 val1
2 val2 val2
我想要这样的东西
id col1 col2
1 val1 val2
2 val2 val1
如果 val1 存在于 col1 或 col2 中,则不需要更新。