MySql從表結果集中隨機取一條資料

2021-09-01 19:20:56 字數 618 閱讀 1243

該功能的實現基於「mysql 查詢結果中自動加序號列 」

select * from (select (@rowno :=@rowno+1) as rowno, pwd from pur_admininfo, (select @rowno := 0) b) tmp where rowno=(select round(rand() * 10000000 % (select count(*) from pur_admininfo))) limit 1;

為了可以隨機得到表結果集中的任何一條記錄,這裡乘以10000000,然後再取模,但不知道為什麼更大的數字就不行了。

另一種實現方式:

select * from pur_admininfo as t1 join (select round(rand() * ((select max(rid) from pur_admininfo) - (select min(rid) from pur_admininfo)) + (select min(rid) from pur_admininfo)) as rid) as t2 where t1.rid >= t2.rid order by t1.rid limit 1;

MySql從表結果集中隨機取一條資料

該功能的實現基於 mysql 查詢結果中自動加序號列 select from select rowno rowno 1 as rowno,pwd from pur admininfo,select rowno 0 b tmp where rowno select round rand 1000000...

如何從結果集中獲得隨機結果

法一 select from select from fem parties sample sample percent where rownum n 法二 select from fem parties where rownum n order by dbms random.value order...

ORACLE隨機從表中取一條資料作為函式返回值

需求是這樣的 有一張經緯度表,需要從中隨機取一條資料插入另一張表作為其中的兩個字段。插入過程在儲存過程中,所以需要函式返回值為經緯度資料物件。首先,生成返回值物件point object,包括經度緯度。生成經緯度 create or replace type point object as obje...