繁体   English   中英

更新 SQL Server 中的多条记录

[英]Updating multiple records in SQL Server

我正在尝试更新 SQL Server 中的客户端表,我需要在其中更改 450 个不同客户端的到期日期。

所有 450 个客户的新到期日期应该相同。

我正在考虑以下方面的事情:

UPDATE Clients
SET SmartCardExpiry = 20200123
WHERE ClientId IN (*ClientID's for all 450 clients separated by a comma*)

这是正确的方法吗?

正如我在您的问题正文中看到的那样,您在传递日期值时缺少单引号。 所以,会的。

UPDATE Clients
SET SmartCardExpiry = '20200123'

要在以逗号分隔的 where 条件中传递值,您可以使用STRING_SPLIT()函数。

WHERE ClientId IN (SELECT 
    value  
FROM 
    STRING_SPLIT('1, 2, 5', ','))

尽管String_Split()在较低版本的 SQL Server 中不可用,因此您可能需要编写自定义查询以在 where 条件中分离和传递值。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM