php mysql에서 여러 데이터를 무작위로 얻는 방법: 1. "SELECT * FROM tablename ORDER BY RAND() LIMIT"를 통해 데이터 가져오기 2. "ORDER BY t1.id ASC LIMIT"를 통해 지정된 개수의 데이터 가져오기; , 등. .
이 문서의 운영 환경: Windows 7 시스템, PHP 버전 7.1, Dell G3 컴퓨터.
php mysql은 어떻게 여러 데이터 조각을 무작위로 얻나요?
Mysql은 여러 데이터 조각을 무작위로 얻는 방법을 구현합니다.
SQL 문을 작성하는 방법에는 여러 가지가 있습니다.
1: SELECT * FROM tablename ORDER BY RAND () LIMIT 데이터 항목 수를 얻고 싶습니다.
2: SELECT *FROM `table` WHERE id >= (SELECT FLOOR( MAX(id) * RAND()) FROM `table` ) ORDER BY id LIMIT 가져오려는 데이터 항목 Number;
3: SELECT * FROM `table` AS t1 JOIN (SELECT ROUND(RAND() * (SELECT MAX(id) FROM `table`)) AS id) AS t2 WHERE t1.id >= t2 .id
ORDER BY t1.id ASC LIMIT 확보하려는 데이터 항목 수;
4: SELECT * FROM `table`WHERE id >= (SELECT Floor( RAND() * (SELECT MAX(id) FROM `table`))) ORDER BY id LIMIT 가져오려는 데이터 항목 수;
5: SELECT * FROM `table` WHERE id >= (SELECT Floor( RAND() * ((SELECT MAX(id ) FROM `테이블`)-(SELECT MIN(id) FROM `테이블`)) + (SELECT MIN(id) FROM `테이블`))) ORDER BY id LIMIT 가져오려는 데이터 항목 수;
6 :SELECT * FROM `table` AS t1 JOIN (SELECT ROUND(RAND() * ((SELECT MAX(id) FROM `table`)-(SELECT MIN(id ) FROM `table`))+(SELECT MIN(id) FROM `table`)) AS id) AS t2 WHERE t1.id >= t2.id ORDER BY t1.id LIMIT 얻고자 하는 데이터 항목의 수 ;
피드백:
실제로 측정된 데이터는 380,000개이며, 10개 항목을 무작위로 선택할 수 있으며 실행 시간은 1~2초입니다. 2. 20초 이상 실행해도 반응이 없습니다. 3번 시도했습니다. 3 가져온 10개의 데이터는 연속된 ID이며, 실행하는데 걸리는 시간은 0.001초이다. 4 ID가 1~4000 사이인 항목 10개를 무작위로 선택하고 0.003초 동안 실행한 후 10회 이상 시도합니다. 5 ID가 1~4000 사이인 항목 10개를 무작위로 선택하고 0.003초 동안 실행한 후 10회 이상 시도합니다. 6 가져온 10개의 데이터는 연속된 ID이며, 실행하는데 걸리는 시간은 0.001초이다.
추천 학습: "PHP 비디오 튜토리얼"
위 내용은 PHP mysql에서 무작위로 여러 데이터 조각을 얻는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!