当前位置:  开发笔记 > 数据库 > 正文

如何在SQL Server 2005中将随机数作为列返回?

如何解决《如何在SQLServer2005中将随机数作为列返回?》经验,为你挑选了1个好方法。

我在SQL Server 2005上运行SQL查询,除了从数据库中查询2列之外,我还想随机返回1列随机数.我试过这个:

select column1, column2, floor(rand() * 10000) as column3 
from table1

哪种方法有效,但问题是此查询在每一行返回相同的随机数.每次运行查询时它都是一个不同的数字,但它不会因行而异.我怎么能这样做并为每一行获得一个新的随机数?



1> Timothy Khou..:

我意识到这是一个较旧的帖子......但你不需要视图.

select column1, column2, 
  ABS(CAST(CAST(NEWID() AS VARBINARY) AS int)) % 10000 as column3 
from table1

推荐阅读
贾志军
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有