84669 Lernen von Personen
152542 Lernen von Personen
20005 Lernen von Personen
5487 Lernen von Personen
7821 Lernen von Personen
359900 Lernen von Personen
3350 Lernen von Personen
180660 Lernen von Personen
48569 Lernen von Personen
18603 Lernen von Personen
40936 Lernen von Personen
1549 Lernen von Personen
1183 Lernen von Personen
32909 Lernen von Personen
MySQL从一张表怎么随机取50条数据?
欢迎选择我的课程,让我们一起见证您的进步~~
select * from table order by rand() limit 50;
SELECT * FROM table_name ORDER BY rand() LIMIT 50;
SELECT * FROM 表名 AS t1 JOIN ( SELECT ROUND( RAND( ) * (SELECT MAX( id )FROM 表名 ) ) AS id ) AS t2 WHERE t1.id >= t2.id ORDER BY t1.id ASC LIMIT 50
这个东西得分开看了。如果你的表记录没有上万级别。那么order by rand()也可以接受。但是表记录大的时候,order by rand()效率极低。所以建议在提问题的基础上,尽可能交代业务场景~~~。
order by rand()
rand()这玩意,依稀记得,在《高性能mysql》中一再强调,避免使用。结合实际情况,数据量不大几万十几万的,可以用用;再大了,还是用程序实现,再去查询吧。
rand()可以,但是请记住,上线项目不要用含任何计算的SQL语句。
SELECT * FROM table_name ORDER BY rand() LIMIT 50;
这个东西得分开看了。
如果你的表记录没有上万级别。那么
order by rand()
也可以接受。但是表记录大的时候,
order by rand()
效率极低。所以建议在提问题的基础上,尽可能交代业务场景~~~。
order by rand()
rand()这玩意,依稀记得,在《高性能mysql》中一再强调,避免使用。
结合实际情况,数据量不大几万十几万的,可以用用;
再大了,还是用程序实现,再去查询吧。
rand()可以,但是请记住,上线项目不要用含任何计算的SQL语句。