成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

SQL兩個隨機函數newID()和RAND()的示例比較

數據庫 SQL Server
SQI中的隨機函數NEWID和rand()用法不盡相同,下面就將為您示例分析這兩個隨機函數的區別,供您參考,希望對您學習SQL語言能有所幫助。

在SQL語言中,隨機函數NEWID和rand()用法并不相同,下面就將為您示例分析這兩個隨機函數的區別,供您參考,希望對您深入理解SQL函數能起到作用。

例句:

SELECT * FROM TABLENAME ORDER BY NEWID() --隨機排序

SELECT TOP 10 * FROM TABLENAME ORDER BY NEWID() --從TABLENAME表中隨機取出10條記錄

示例:

對變量使用 NEWID 函數

以下示例使用 NEWID() 對聲明為 uniqueidentifier 數據類型的變量賦值。在測試 uniqueidentifier 數據類型變量的值之前,先輸出該值。

-- Creating a local variable with DECLARESET syntax.

DECLARE @myid uniqueidentifier

SET @myid = NEWID()

PRINT 'Value of @myid is '+ CONVERT(varchar(255), @myid)

下面是結果集:

Value of @myid is 6F9619FF-8B86-D011-B42D-00C04FC964FF

注意:

NEWID 對每臺計算機返回的值各不相同。所顯示的數字僅起解釋說明的作用。#p#

隨機函數:rand()

在查詢分析器中執行:select rand(),可以看到結果會是類似于這樣的隨機小數:0.776282033621286,像這樣的小數在實際應用中用得不多,一般要取隨機數都會取隨機整數。那就看下面的兩種隨機取整數的方法:

1、 方法一

A:select floor(rand()*N) ---生成的數是這樣的:12.0

B:select cast( floor(rand()*N) as int) ---生成的數是這樣的:12

2、 方法二

A:select ceiling(rand() * N) ---生成的數是這樣的:12.0

B:select cast(ceiling(rand() * N) as int) ---生成的數是這樣的:12

其中里面的N是一個你指定的整數,如100,可以看出,兩種方法的A方法是帶有.0這個的小數的,而B方法就是真正的整數了。

大致一看,這兩種方法沒什么區別,真的沒區別?其實是有一點的,那就是他們的生成隨機數的范圍:

方法1的數字范圍:0至N-1之間,如cast( floor(rand()*100) as int)就會生成0至99之間任一整數

方法2的數字范圍:1至N之間,如cast(ceiling(rand() * 100) as int)就會生成1至100之間任一整數

對于這個區別,看SQL的聯機幫助就知了:

比較 CEILING 和 FLOOR

CEILING 函數返回大于或等于所給數字表達式的最小整數。FLOOR 函數返回小于或等于所給數字表達式的最大整數。

例如,對于數字表達式 12.9273,CEILING 將返回 13,FLOOR 將返回 12。FLOOR 和 CEILING 返回值的數據類型都與輸入的數字表達式的數據類型相同。

現在,各位就可以根據自己需要使用這兩種方法來取得隨機數了^_^

最后我們綜合使用一下NEWID()和RAND():

例:從數據表[TABLENAME]中讀出N(1~100)條數據,且隨機排序

select TOP (SELECT cast(ceiling(rand() * 100) as int)) * FROM TABLENAME ORDER BY NEWID()
 

 

 

【編輯推薦】

sql函數遍歷BOM表的方法

判斷閏年的SQL函數

sql函數生成助記碼的實例

SQL函數的格式

巧用SQL函數讓公歷變農歷

責任編輯:段燃 來源: 互聯網
相關推薦

2010-09-14 17:20:39

SQL函數

2010-09-06 17:40:59

SQL函數

2010-10-09 15:35:25

MySQL rand函

2024-01-25 11:32:21

2009-06-30 09:37:02

對象比較Java

2011-08-29 18:17:58

Ubuntu

2022-07-05 15:15:11

Python日期命令

2010-09-09 09:49:18

SQL函數存儲過程

2023-10-04 20:03:46

GOkeyvalue

2020-02-27 14:05:26

SQLServer數據庫

2010-09-06 17:26:54

SQL函數

2010-09-06 16:52:17

SQL函數

2010-05-27 09:50:18

MySQL導入sql腳

2010-07-21 11:32:35

SQL Server日

2019-09-05 08:25:15

Oraclesidsql

2011-04-19 16:06:57

typedef

2009-07-06 15:11:18

Java 隨機數

2023-03-26 00:15:43

2023-01-17 19:30:52

Linux命令行目錄

2022-07-06 23:59:57

NumPyPython工具
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 五月综合激情婷婷 | 91视频.com| 蜜臀久久99精品久久久久野外 | 免费一级片 | 欧美一级淫片免费视频黄 | 久久亚洲精品国产精品紫薇 | 中文字幕第一页在线 | aaa综合国产 | 麻豆av免费观看 | 久久一| 亚洲一一在线 | 亚洲综合在线视频 | 99精品久久 | 欧美精品在线一区 | 欧美在线a | 一级毛片免费 | 中文字幕日韩欧美一区二区三区 | 毛片免费看 | 91av在线免费看 | 欧美1区2区| 国产情品 | 中文字幕国产 | 欧美日本久久 | 亚洲免费在线观看av | 中文字幕第一页在线 | 欧美日韩在线视频观看 | 日本精品一区二区 | 国产欧美精品一区二区三区 | 美女艹b| 亚洲精品自在在线观看 | 四虎永久免费影院 | 午夜影院中文字幕 | 日韩一区二区在线视频 | 国产精品区二区三区日本 | 精品国产一区二区三区免费 | 一区二区三区精品在线视频 | 国产精品精品久久久 | 久久久一区二区三区 | 波多野结衣一区二区三区在线观看 | av片免费 | 福利视频网站 |