mysql隨機(jī)取出10條數(shù)據(jù) mysql怎樣隨機(jī)抽取數(shù)據(jù)庫中的10條內(nèi)容?
mysql怎樣隨機(jī)抽取數(shù)據(jù)庫中的10條內(nèi)容?SELECT * WHERE t1.id >= t2.id ORDER BY t1.id LIMIT 1 取10次,查詢效率高不耗時(shí)間,且重樣概
mysql怎樣隨機(jī)抽取數(shù)據(jù)庫中的10條內(nèi)容?
SELECT * WHERE t1.id >= t2.id ORDER BY t1.id LIMIT 1 取10次,查詢效率高不耗時(shí)間,且重樣概率地
sql隨機(jī)抽取幾條數(shù)據(jù)的方法,推薦?
四種數(shù)據(jù)庫隨機(jī)獲取10條數(shù)據(jù)的方法
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([一個(gè)自動編號字段])
這條語句在 Access 中的“查詢”中是可以運(yùn)行并得到隨機(jī)結(jié)果的,但在 ASP.NET等后臺程序代碼中卻無法得到預(yù)期的隨機(jī)效果。
正確的寫法如下:
以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) "*自動編號字段)"
MySQL實(shí)現(xiàn)隨機(jī)獲取幾條數(shù)據(jù)的方法?
1:你要隨機(jī)更新的話。要先查幾條隨機(jī)數(shù)據(jù)。然后根據(jù)查詢的數(shù)據(jù)一個(gè)特定字段去更新。但是又不能在查詢的時(shí)候同時(shí)更新。會報(bào)錯(cuò)。要先將查詢出來的存儲到臨時(shí)表。再進(jìn)行修改。
下面是我的s_grader 表結(jié)構(gòu)和我的SQL語句。就實(shí)現(xiàn)了隨機(jī)查詢兩條。然后進(jìn)行修改。要隨機(jī)修改幾條就把Limit后面的2改成幾。親測可行。
UPDATE s_grader SET Sgrad="999" WHERE Sname in ( SELECT F.Sname FROM (SELECT * FROM s_grader ORDER BY RAND() LIMIT 2) F)
php要是隨機(jī)的從數(shù)據(jù)庫中調(diào)取數(shù)據(jù)怎么實(shí)現(xiàn)啊,請指點(diǎn)?
$sql = "select * from table"$result = mysql_query($sql)$rand = mt_rand(0,mysql_num_rows($result))$i=0while($rs = mysql_fetch_array($result)){ if($rand == $i){ $output = $rs[$i] } $i }$output數(shù)組就是隨機(jī)記錄可以按照樓上說的,或者直接在sql上作文章。 order by Rand() limit 10語句后面加上這段,隨機(jī)取出10條來先按要求調(diào)取,然后對recordset用隨機(jī)指針定位就可。