Sql 如何在SELECT查询的每一行中分配随机数?

Sql 如何在SELECT查询的每一行中分配随机数?,sql,sqlite,Sql,Sqlite,我正在使用以下查询获取数据: select * from tbl_words where userID = '3' 此选择查询将在数据输入数据库时提供数据 这里我想为随机数指定另一列。所以每一行在随机数列中都有一个随机数 如何实现这一点?这可能会奏效: select *, random() from tbl_words where userID = '3' 这可能会起作用: select *, random() from tbl_words where userID = '3' 您需要

我正在使用以下查询获取数据:

  select * from tbl_words where userID = '3'
选择查询
将在数据输入数据库时提供数据

这里我想为随机数指定另一列。所以每一行在随机数列中都有一个随机数

如何实现这一点?

这可能会奏效:

select *, random() from tbl_words where userID = '3'
这可能会起作用:

select *, random() from tbl_words where userID = '3'
您需要
random()
函数:

select t.*, random() from tbl_words t where userID = '3'
您需要
random()
函数:

select t.*, random() from tbl_words t where userID = '3'
RAND()(在MySQL中)生成一个介于0和1之间的随机数。乘以10得到1到10,乘以100得到1到100。。。等等

感谢下面注释中的Null,SQLite中的RANDOM()会在负愚蠢和正愚蠢之间生成一个随机数,因此SQLite不需要乘以任何值

插入时:

INSERT INTO table_name (column1, column2, random_number) VALUES ("something", "else", RAND() * 100000)
INSERT INTO table_name (column1, column2, random_number) VALUES ("something", "else", RANDOM())
选择

SELECT column1, column2, RAND() * 100000 AS random_number FROM table_name
SELECT column1, column2, RANDOM() AS random_number FROM table_name
RAND()(在MySQL中)生成一个介于0和1之间的随机数。乘以10得到1到10,乘以100得到1到100。。。等等

感谢下面注释中的Null,SQLite中的RANDOM()会在负愚蠢和正愚蠢之间生成一个随机数,因此SQLite不需要乘以任何值

插入时:

INSERT INTO table_name (column1, column2, random_number) VALUES ("something", "else", RAND() * 100000)
INSERT INTO table_name (column1, column2, random_number) VALUES ("something", "else", RANDOM())
选择

SELECT column1, column2, RAND() * 100000 AS random_number FROM table_name
SELECT column1, column2, RANDOM() AS random_number FROM table_name
您可以在查询中使用
random()
,例如

Select * from `yourtablename` where `yourcolumnname` order by random()
您可以在查询中使用
random()
,例如

Select * from `yourtablename` where `yourcolumnname` order by random()
试一下吧,没办法再试一下。 从中随机发现

试一下吧,没办法再试一下。

Random no或unique no中找到Random?插入时是否在行中插入一个随机数?该随机数是记录到数据库中还是每次运行查询时创建?每次都创建。感谢您的回答random no或unique no?您想在插入时在行中插入一个随机数吗?该随机数应该记录到数据库中还是在每次运行查询时创建?每次都创建。感谢您的回答,SQLite中的
RANDOM()
生成了一个介于-9223372036854775808和+9223372036854775807.O之间的随机整数,现在我不知道了。我一直认为这只是一个函数名的gotcha。你可以通过使用模n+1得到
0到n
范围内的值;例如:
RANDOM()%101
将给您一个介于0和100之间的数字。它不是“介于负愚蠢和正愚蠢之间”,而是介于-2^63和+2^63-1之间,这是8字节的最小值和最大值。这些事情很少发生arbitrary@NullUser:好评论。真的很有帮助。感谢SQLite中的
RANDOM()
生成了一个介于-9223372036854775808和+9223372036854775807.O之间的随机整数,现在我不知道了。我一直认为这只是一个函数名的gotcha。你可以通过使用模n+1得到
0到n
范围内的值;例如:
RANDOM()%101
将给您一个介于0和100之间的数字。它不是“介于负愚蠢和正愚蠢之间”,而是介于-2^63和+2^63-1之间,这是8字节的最小值和最大值。这些事情很少发生arbitrary@NullUser:好评论。真的很有帮助。谢谢