sql - 将列表中的随机字符串插入表中
问题描述
我正在尝试将随机部门名称插入到 SQL Server 表中。目前我有下面的代码。当我用样本数据填充表格时,我希望随机插入列出的四个部门值(comp sci、生物学、心理学、化学)中的任何一个。任何帮助,将不胜感激
Declare @SID int
Set @SID = 1
/* Create temporary table to insert random department name
declare @myList table (Dept varchar(50))
insert into @myList values ('Computer Science'), ('Biology'), ('Psychology'), ('Chemistry')*/
While @SID <= 12000
Begin
Insert Into Student values ('Student', CAST(@SID as nvarchar(10)), 'Department' + CAST(@SID as nvarchar(10)), '50')
Print @SID
Set @SID = @SID + 1
End
解决方案
使用 a select
(而不是values
)从您创建的列表中进行选择并插入top 1
排序依据newid()
。
--insert into dbo.Student (Name, id, Department, Position)
select top 1 'Student', CAST(@SID as nvarchar(10)), Dept, '50'
from @myList
order by newid();
注意:最好的做法是列出所有插入的列。
推荐阅读
- javascript - 从 Alteryx API 查询获取输出
- ios - 如何将图像从 imageView 保存到照片库?
- android - 无法在使用 androidx 的项目构建中使用 Arr 库
- sql - 标记列
- class - [AccelStepper][PlatformIO][mbed] 请求''中的成员'',它是非类类型
- javascript - 单击提交按钮时显示加载 Gif
- python - 使用 PyQt4 和 sip 共享 Maya 脚本 - 如何设置模块?
- phaser-framework - Phaser3 中的 div 元素
- java - 舍入多头并重新格式化
- nginx - 如何在 nginx 上配置连接数?