㈠ sql 有重復記錄,想隨機取其中一條
下面是正確的寫法:
selectdistinctA1.貨號,(selecttop1A2.適用病症fromAasA2whereA1.貨號=A2.貨號orderbynewid())as適用病症
fromAasA1--其中A為你表的名稱
每次執行的結果都是隨機的。
㈡ 在SQL中怎麼樣獲取隨機數
1、隨機小數 select rand(),
㈢ sql 隨機抽取幾條數據的方法 推薦
四種資料庫隨機獲取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語句生成隨機數,如何隨機顯示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
㈤ SQL語句如何實現從資料庫表中查詢隨機數據的記錄
隨機抽取幾個數據的,打算在php用mt_rand取出隨機的數字,作為數組索引來重新付一個新數組的,結果發現數組太多,資料庫select佔用時間太長,之後發現了下面的方法,拿來分享,不同的資料庫又又不同的處理,那麼就分開介紹一下:Select a random row with MySQL: ,SELECT column FROM table