当前位置:首页 » 编程语言 » sql返回随机行
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

sql返回随机行

发布时间: 2022-08-09 11:23:54

‘壹’ 如何在sql中随机选择行

//mysql:随机选择前10
SELECT*FROMtablenameORDERBYRAND()LIMIT0,10
//mssql:随机选择前10
selecttop10*,newid()

‘贰’ 关于SQL如何取随机数问题

Oracle的随机数产生函数(DBMS_RANDOM )
2007-10-17 17:12
Oracle8 8.0版介绍了DBMS_RANDOM包,Oracle8i 8.1.6版介绍了DBMS_RANDOM包的新功能,但Oracle8i 文档中没有详细全面介绍其功能。幸运的是:有一个新的DBMS_RANDOM包函数能够返回0-1之间的随机数。这个新函数是:
◆ FUNCTION value RETURN NUMBER;
◆ FUNCTION value (low IN NUMBER, high IN NUMBER) RETURN NUMBER;
◆ FUNCTION normal RETURN NUMBER;
◆ FUNCTION string (opt char, len NUMBER) RETURN VARCHAR2;

VALUE函数的第一种形式返回一个大于或等于0且小于1的随机数;第二种形式返回一个大于或等于LOW,小于HIGH的随机数。下面是其用法的一个示例:
SQL> select dbms_random.value, dbms_random.value(55,100) from al;
VALUE DBMS_RANDOM.VALUE(55,100)
--------------- -----------------------------
.782821936 79.6367038
NORMAL函数返回服从正态分布的一组数。此正态分布标准偏差为1,期望值为0。这个函数返回的数值中有68%是介于-1与+1之间,95%介于-2与+2之间,99%介于-3与+3之间。事实上,这就是你在清单1中所看到的。
最后,是STRING函数。它返回一个长度达60个字符的随机字符串。参数OPT可以是清单2显示的值中的任何一个单个字符。
关于这些函数及DBMS_RANDOM包的文件都包含在SQLPlus中:
select text from all_source
where name = 'DBMS_RANDOM'
and type = 'PACKAGE' order by line;

‘叁’ 如何写一个SQL函数用于返回一串随机字符串

可以.
--存储过程
create table #TB(UserID varchar(10),PassWord varchar(16))
go
CREATE PROC #PROC
AS
BEGIN
DECLARE @S VARCHAR(10)
SET @S=REPLACE(NEWID(),'-','')
IF NOT EXISTS (SELECT 1 FROM #TB where UserID=@s)
begin
insert into #TB(UserID,PassWord) select @s,'fcs'
end
else
begin
select '已经存在'
end
END
--调用
EXEC #PROC

‘肆’ sql中怎么获取任意一行

Top 1 配合 Order by newid() 就可以了。
下面是一个 有50行数据的 测试表中, 随机处理的例子。

-- 测试表
1> CREATE TABLE #t (
2> id INT
3> );
4> GO

-- 测试数据
1>
2> INSERT INTO #t
3> SELECT
4> number
5> FROM
6> master..spt_values
7> WHERE
8> type='P'
9> AND number between 1 and 50;
10> GO

(50 行受影响)

-- 第一次随机。
1>
2> SELECT top 1
3> *
4> FROM
5> #t
6> ORDER BY
7> newid();
8> go
id
-----------
14

(1 行受影响)

-- 第二次随机。
1> SELECT top 1
2> *
3> FROM
4> #t
5> ORDER BY
6> newid();
7> go
id
-----------
25

(1 行受影响)

‘伍’ sql中的随机函数怎么用

sql server的rand()函数:返回0到1之间的随机浮点值
round()函数:返回数值表达式,舍入到指定长度或精度。
例如随机取得0~99之间的数: round(rand()*100,0)
随机取得100~199之间的数:round(rand()*100+100,0)

‘陆’ 在SQL Server数学函数中,获取0~1之间的随机值的函数是什么

MSSQLSERVER如要获取0~1之间的随机数可以使用下列表达式:

Floor(2* Rand())

例如每次运行下列SQL语句,将随机返回0或1

selectFloor(2*Rand());

请注意MSSQL的SQL语言,每次运行select,不论检索出多少行,随机函数rand都将返回相同的随机数。

另外,需要返回某个指定范围的随机整数请参考下列公式:

Floor((upperbound - lowerbound + 1) * Rand() + lowerbound)

参数说明:

upperbound 为正整数上限

lowerbound 为正整数下限

Rand()为系统随机函数

Floor()为系统函数,返回小于或等于所给数字表达式的最大整数。

有不同需要时,照套上述公式就可以了。

‘柒’ sql 自定义函数返回0~100的随机整数

SQL使用函数rand()产生随机数,返回0~100的随机整数使用下面的语句:
select cast(floor(rand() * 101) as int)
生成0至100之间任一整数

‘捌’ 如何利用SQL随机显示一条数据

核心思路:在SQL Server中,可以用order by newid()实现随机排序

--测试数据
withtmp(a,b)as(
select1,2unionall
select1,3unionall
select2,3unionall
select2,4unionall
select2,9)
--利用row_number和orderbynewid()实现随机取一行
selecta,bfrom(
selecta,b
,row_number()over(partitionbyaorderbynewid())asseq
fromtmp
)twhereseq=1

第一次运行结果:

‘玖’ 在SQL中怎么样获取随机数

1、随机小数 select rand(),