Gib*_*boK 3 sql database sql-server
我需要在表格中填充虚拟值.
我需要为创建的每一行创建一个随机生成的值"RANDOM_VALUE".
随机值必须是字符串,其范围可以只是"A"或"B".
该脚本应该能够列出一系列随机生成的值为A或B的行
这是一个应该如何工作的例子:
ROW RANDOM_VALUE
1 A
2 B
3 B
4 A
... ...
Run Code Online (Sandbox Code Playgroud)
有什么想法怎么做?谢谢!
Mar*_*ith 14
Rand()每列只评估一次,所以对于所有行都是相同的,你可以使用NewId()如下所示.
SELECT CHAR(65+ABS(CHECKSUM(NEWID()))%2), RestOfCols
FROM YourTable
Run Code Online (Sandbox Code Playgroud)
如果你需要完全按照你的问题输出,只需加入一个足够大的桌子.例如
WITH cte AS
(
SELECT
ROW_NUMBER() OVER (ORDER BY (SELECT 0)) AS ROW,
CHAR(65+ABS(CHECKSUM(NEWID()))%2) AS RANDOM_VALUE
FROM sys.objects
)
INSERT INTO DummyTable
SELECT ROW,RANDOM_VALUE
FROM cte
WHERE ROW<= 4
Run Code Online (Sandbox Code Playgroud)