從資料庫隨機獲取資料庫資料庫數據-九游会j9娱乐平台
1. 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) "*自動編號欄位)"
2. 我想隨機取出資料庫中的5條數據
你可以先用select * from user取出全部的數據
然後取得rs的最大記錄數(rs.recordcount),然後再隨機取出1到最大記錄數之間的隨機5個數(這步應該很簡單,不用解釋如何做了吧呵呵),然後使用rs.move(你隨機的5個數字之一)就可以分別取出5條記錄來.這個辦法的好處是你的主鍵id不需要是連續的,而絕大多數表都不是連續的呵呵.所以使用sql語句的where id=隨機數字的方法不是很安全
3. 怎麼從mysql表中隨機取數據
從mysql資料庫表中隨機獲取數據
其實,從資料庫隨機獲取數據,很簡單,只須用到一個rand()函數;
select * from table_name order by rand() limit 0,5;
下面是一個小實例:
從文章表中隨機獲取5條數據。
$dblink=mysql_connect("localhost","root","123456");
mysql_query("set names utf8");
mysql_select_db("aixuexi");
$sql="select * from waxx_article order by rand() limit 0,5";
$rs=mysql_query($sql);
while($row=mysql_fetch_array($rs)){
$rows[]=$row;
}
if($rows){
foreach($rows as $v){
?>
}
}else{
echo "暫無文章";
}
4. c# 隨機從資料庫抽取數據。
1:
資料庫查隨即抽取10條questionid
放到數組arrayquestion中
arrayquestion[0-9]="select
top
10
questionid
,newid()
as
random
from
question
order
by
random"
2:頁面載入時顯示第一條(定義變數int
n=0;)
第一條數據="select
questiontopic
from
question
where
questionid=arrayquestion[n]"
3:button_onclick事件,點擊顯示下一條數據
n ;
下一條數據="select
questiontopic
from
question
where
questionid=arrayquestion[n]"
我想我講的已經夠詳細了。。。。~~
5. 如何從mysql資料庫的一張表中按不同的比例隨機取數據
隨機排序,然後取前十條即可。
order by rand()
但需要注意的是效率並不高,在負載較重的環境下可能亂猜正會造成問題。
祝好運,望嘩悔采兆耐納。
6. 如何從mysql資料庫中隨機獲取任意條數據
隨機讀取可用newid(),取一條可用top 1
舉例:如在表test中隨機抽取一條未被讀取的數據,執行語句為:
select?top?1?*?from?test?order?by?newid()第一次執行結果:
第二次執行結果:
結論:兩次執行結果有可能一樣,也有可能不一樣,也就是實現了隨機的效果。