sql - 在本地临时表中创建随机数
问题描述
今天我有点进退两难。我的任务是创建一个本地临时表,其中包含教职员工的名字、姓氏、校园和新的身份证号码。ID 号将是一个随机生成的 5 位数字。(我正在使用 Microsoft SQL Server Management Studio)
我的问题是我是随机数生成和本地临时表的新手。我相信我的大部分代码都是正确的,期望我需要制作的“随机 ID 号”。我用谷歌搜索了我的问题,唯一的问题是似乎有很多方法可以创建“随机”数字,但我不明白它背后的方法。我在下面包含了我的代码和数据库。
我的代码:
SELECT FirstName, LastName, Campus, LEFT(CAST(CAST(CEILING(RAND() *100000000) AS bigint) AS varchar), 5) AS IDnumber
INTO #LocalTemp1
FROM Faculty;
SELECT * FROM #LocalTemp1
数据库:
CREATE TABLE Faculty
(Faculty_ID INT PRIMARY KEY IDENTITY,
LastName VARCHAR (20) NOT NULL,
FirstName VARCHAR (20) NOT NULL,
Department VARCHAR (10) SPARSE NULL,
Campus VARCHAR (10) SPARSE NULL);
INSERT INTO Faculty VALUES ('Brown', 'Joe', 'Business', 'Kent');
INSERT INTO Faculty VALUES ('Smith', 'John', 'Economics', 'Kent');
INSERT INTO Faculty VALUES ('Jones', 'Sally', 'English', 'South');
INSERT INTO Faculty VALUES ('Black', 'Bill', 'Economics', 'Kent');
INSERT INTO Faculty VALUES ('Green', 'Gene', 'Business', 'South');
CREATE TABLE Course
(Course_ID INT PRIMARY KEY IDENTITY,
Ref_Number CHAR (5) CHECK (Ref_Number LIKE '[0-9][0-9][0-9][0-9][0-9]'),
Faculty_ID INT NOT NULL REFERENCES Faculty (Faculty_ID),
Term CHAR (1) CHECK (Term LIKE '[A-C]'),
Enrollment INT NULL DEFAULT 0 CHECK (Enrollment < 40))
INSERT INTO Course VALUES ('12345', 3, 'A', 24);
INSERT INTO Course VALUES ('54321', 3, 'B', 18);
INSERT INTO Course VALUES ('13524', 1, 'B', 7);
INSERT INTO Course VALUES ('24653', 1, 'C', 29);
INSERT INTO Course VALUES ('98765', 5, 'A', 35);
INSERT INTO Course VALUES ('14862', 2, 'B', 14);
INSERT INTO Course VALUES ('96032', 1, 'C', 8);
INSERT INTO Course VALUES ('81256', 5, 'A', 5);
INSERT INTO Course VALUES ('64321', 2, 'C', 23);
INSERT INTO Course VALUES ('90908', 3, 'A', 38);
我正在查看的一个来源,仍然需要更好的理解:Generating a random & unique 8 characters string using MySQL
编辑:运行查询实际上不显示任何信息,只显示列名。
编辑:仍然需要帮助,我不知道编辑这篇文章是否会碰到它
编辑:所以我决定尝试自己使用“RAND()”。我现在可以看到正在显示的结果,但是,数字集并非都是随机的。
编辑:更新了 RANDOM ID 的公式,它以某种方式工作,只是没有使每一行都成为唯一的随机数。
解决方案
推荐阅读
- javascript - 带有单词边界的 Javascript 正则表达式包括带有特殊字符的单词
- java - Swagger、jersey、jax-rs、嵌入式码头配置问题
- plugins - 失眠自定义插件开发
- python - 如果我使用过滤器而不是get,如何使用order_set的功能?
- javascript - 我可以添加复杂的车把表达式吗?
- java - 从 Set1 中删除 Java 中 Set2 中的值
- javascript - 在 VUE.JS 中向 API 发出 POST 请求时出现错误“this.$store is undefined”
- jenkins - 强制所有 Jenkins 管道调用函数?
- css - CSS颜色函数中的alpha值的四舍五入
- python - 取决于熊猫条件的另一列的列值