gpt4 book ai didi

sql-server - 打乱 SQL Server 中的列?

转载 作者:行者123 更新时间:2023-12-03 02:07:02 26 4
gpt4 key购买 nike

我们有一个网络应用程序,希望向潜在客户演示,但我们最好的方法是使用现有数据,以获得完整的体验。当然,我们不想使用应用程序中可见的实际客户名称或地址等来执行此操作。 SQL Server 中有没有一种简单的方法来随机化或打乱 varchar 或文本字段?

无论如何,这些列都不是键,无论是主键还是外键。

最佳答案

这是一个迟到的答案,但我对有关此事的任何互联网搜索都不满意。下面是一个示例,它将打乱客户表中的名字和姓氏以创建新名称:

--Replace Customers with your table name
select * from Customers

--Be sure int match your id column datatype
Declare @id int

--Add a WHERE here to select just a subset of your table
DECLARE mycursor CURSOR FOR SELECT id FROM Customers
OPEN mycursor
FETCH NEXT FROM mycursor INTO @id;

WHILE (@@FETCH_STATUS = 0)
BEGIN
--We loop
--Warning: NEWID() is generated once per query, so we update the fullname in two queries.
UPDATE Customers
SET FirstName = (SELECT TOP 1 FirstName FROM Customers ORDER BY NEWID())
WHERE id = @id
UPDATE Customers
SET LastName = (SELECT TOP 1 LastName FROM Customers ORDER BY NEWID())
WHERE id = @id
FETCH NEXT FROM mycursor INTO @id;
END

CLOSE mycursor;
DEALLOCATE mycursor;

select * from Customers

关于sql-server - 打乱 SQL Server 中的列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1718763/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com