1. 程式人生 > >MySql從表結果集中隨機取一條資料

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

部落格文章地址:http://blog.csdn.net/macwhirr123/article/details/7489484

Select * from (Select (@rowNo :[email protected]+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結果集中隨機資料

部落格文章地址:http://blog.csdn.net/macwhirr123/article/details/7489484 Select * from (Select (@rowNo :[email protected]+1) AS rowno, pwd

mysql優化之資料庫隨機資料

大家都知道mysql 查詢資料庫隨機取一條資料當然用rand()方法  其實這個方法是超級雞肋的,當然你愛好也無所謂,首先列舉兩個表 a表   id(主鍵 int),cardnumber(身份證號碼 char(18)),name(使用者名稱 varchar(40))

ORACLE隨機資料作為函式返回值

需求是這樣的:有一張經緯度表,需要從中隨機取一條資料插入另一張表作為其中的兩個欄位。插入過程在儲存過程中,所以需要函式返回值為經緯度資料物件。 首先,生成返回值物件POINT_OBJECT,包括經度緯度。 --生成經緯度 CREATE OR REPLACE TYPE POINT_OBJECT AS OB

mysql left join中最近時間的資料

要求:根據狀態,最新編輯時間排序 狀態為表1中的使用者狀態,最新編輯時間為表2中最後一次編輯時間 表1為users, 表2為opt_user_log 例: SELECT u.id, u.user_name, u.last_upd_time AS audit_time, u.s

mysql left join中最近時間的資料

要求:根據狀態,最新編輯時間排序 狀態為表1中的使用者狀態,最新編輯時間為表2中最後一次編輯時間 表1為users, 表2為opt_user_log 例: SELECT u.id, u.user_name, u.last_upd_time AS audit_ti

mysql 隨機或多資料 高效率

本文詳細解說了MySQL Order By Rand()效率優化的方案,並給出了優化的思路過程,是篇不可多得的MySQL Order By Rand()效率美文。 最近由於需要大概研究了一下MYSQL的隨機抽取實現方法。舉個例子,要從tablename表中隨機

mysql高效率隨機或多資料

原文連結http://www.cnblogs.com/hfww/archive/2011/07/08/2223359.html 本文詳細解說了MySQL Order By Rand()效率優化的方案,並給出了優化的思路過程,是篇不可多得的MySQL Order By Ra

sqlserver資料庫如何每時/每天/每月/每年任資料

    最近用sqlserver+.NET做一個專案,需求是要用圖表來顯示資料,而且是每時/每天/每月/每年任取一條資料,即如果使用者選擇時間的區域是同一天,那麼按區域的每小時取一條記錄,如果區間是一個月,那麼每天任取一條資料,如果區間是一年,每個月任取一條資料。。。。。 &

你需要一個新的model實體的時候必須new一個.奇怪的問題: 使用poi解析Excel的把資料插入資料庫同時把資料放在一個list中,返回到頁面展示,結果頁面把最後資料顯示了N次

  資料庫顯示資料正常被插 插入一條列印一次資料,也是正常的,但是執行完,list就全部變成了最後一條資料.很奇怪       單步除錯 給list插入第一條資料 model是6607 連續插了多條資料都是6607 而且所有的值都變成了一樣

查詢某張中時間最近的資料

SELECT   a1.id          FROM a a1          LEFT JOIN b b1 ON a1.cid = b1.cid

TP5 limit限制結果數量(指定多少資料)

limit方法也是模型類的連貫操作方法之一,主要用於指定查詢和操作的數量,特別在分頁查詢的時候使用較多。ThinkPHP的limit方法可以相容所有的資料庫驅動類的。 限制結果數量 例如獲取滿足要求的10個使用者,如下呼叫即可: Db::table('think_user'

Oracle的trunc和dbms_random.value隨機n資料

今天在review專案程式碼的時候看到這樣一個問題,有一張號碼錶,每次需要從這樣表中隨機取6個空閒的號碼,也就是每次取出來的6個號碼應該都會有所不同。然後我就看到了這樣的SQL    select   t.*      from   tel_number_tbl t     where   t.status

mysql數據庫記錄裏的某個字段的值

spa mysql name mysql數據庫 mysqli class localhost dbn 執行 <?php $link = mysqli_connect("localhost","root","root","dbname"); //連接數據庫 $sql =

隨機5記錄

select * from (select * from (select level from dual connect by level < 50) order by dbms_random.value) whe

Mysql查詢的結果,寫入txt檔案中,每個欄位用|分隔,下資料要換行

1.首先建立檔案 public static boolean createFile(String fileName, List<?> dtoList, Class<?> clazz, String path) { logger.debug("createF

MySql將查詢結果插入到另外

標準SQL中INSERT語句允許將SELECT語句查詢出來的資料插入到另一個表中,即可快速地從一個或多個表中向一個表中插入多個行。這樣,可以方便不同表之間進行資料交換。 基本的語法格式如下: INSE

【面經】面試官:如何以最高的效率MySQL隨機查詢記錄?

## 寫在前面 > MySQL資料庫在網際網路行業使用的比較多,有些小夥伴可能會認為MySQL資料庫比較小,儲存不了很多的資料。其實,這些小夥伴是真的不瞭解MySQL。MySQL的小不是說使用MySQL儲存的資料少,而是說其體積小,比較輕量。使用MySQL完全可以儲存千億級別的資料,這個我會在後面的文

排序後的結果集中刪除 前n記錄

not null ima -- date com alt delet lec log 端午有人休息,有人忙 操作前數據: --從排序後的結果集中刪除 前n條記錄delete from emp where empno in (select empno

模擬雙色球彩票開獎結果隨機生成註雙色球彩票.......

tint ack 模擬雙色球 test nbsp next 2-2 彩票 返回 模擬雙色球彩票開獎結果:隨機生成一註雙色球彩票,判斷其是否中獎,獎金為多少。一註雙色球彩票由6個不重復的紅球(序號:1~32)和1個籃球(序號:1~16)構成。雙色球中獎規則如下: (提示:①

前端之路:sql語句,隨機獲取記錄(資料)。(或者獲取隨機獲取多(記錄)資料

<!--表中獲取隨機一條title 耗時0.01s id==隨機欄位,最好為表id--> SELECT * FROM `tableName` AS t1 JOIN (SELECT ROUND(RAND() * ((SELECT MAX(id) FROM `ta