如何用SQL语句实现某个字段数为随机数?

如何用SQL语句实现某个字段数为随机数?,第1张

以某整数字段为种子(没有的话要生成一个),通过RAND函数生成一个0-1之间的随机数。如0.7136106261841817,然后转换成文本型,再取后7位即RIGHT(CONVERT(VARCHAR,RAND(序号)),7) 。

结构化查询语言(Structured Query Language)简称SQL,结构化查询语言是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统,sql 语句就是对数据库进行 *** 作的一种语言。

SQL语句无论是种类还是数量都是繁多的,很多语句也是经常要用到的,SQL查询语句就是一个典型的例子,无论是高级查询还是低级查询,SQL查询语句的需求是最频繁的。

DBMS(DataBaseManagementSystem,数据库管理系统)和数据库。平时谈到“数据库”可能有两种含义:MSSQLServer、Oracle等某种DBMS;存放一堆数据表的一个分类(Catalog)。

四种数据库随机获取10条数据的方法

SQL Server:

SELECT TOP 10 * FROM T_USER ORDER BY NEWID()

ORACLE:

SELECT * FROM (SELECT * FROM T_USER ORDER BY DBMS_RANDOM.RANDOM()) WHERE RONUM <= 10

MySQL:

SELECT * FROM T_USER ORDER BY RAND() LIMIT 10

Access:

SELECT TOP 10 * FROM T_USER ORDER BY rnd([一个自动编号字段])

这条语句在 Access 中的“查询”中是可以运行并得到随机结果的,但在 ASP.NET等后台程序代码中却无法得到预期的随机效果。

正确的写法如下:

以ASP.NET为例:

Random random = new Random(System.Guid.NewGuid().GetHashCode())

int r = random.Next()

string sql = "SELECT TOP 10 * FROM T_USER ORDER BY RND(" + (-r) + "*自动编号字段)"

SQL随机查询语句,[数据库使用技巧]SQL语句生成随机数,如何随机显示sql查询语句查询的数据记录集中的20条,随机取出若干条记录的SQL语句,使用SQL语句取随机数的方法

方法如下:

SQL

Server:

Select

TOP

N

*

From

TABLE

order

By

NewID()

Access:

dim

r

randomize

r

=

rnd

sql

=

"select

top

10

*

from

table

order

by

rnd("

&

r

&

"-id)"

rnd("

&

r

&

"-id)

其中的id是自动编号字段,可以利用其他任何数值来完成,比如用姓名字段(UserName)

select

top

10

*

from

table

order

by

rnd("

&

r

&

"-Len(UserName))

MySql:

Select

*

From

TABLE

order

By

Rand()

Limit

10

orACLE:

select

*from

(select

*from

t

order

by

dbms_random.value)

where

rownum<10


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6769730.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-28
下一篇 2023-03-28

发表评论

登录后才能评论

评论列表(0条)

保存