>  기사  >  백엔드 개발  >  데이터베이스에 있는 수백만 개의 데이터에서 무작위로 20개의 레코드를 얻는 PHP 방법

데이터베이스에 있는 수백만 개의 데이터에서 무작위로 20개의 레코드를 얻는 PHP 방법

墨辰丷
墨辰丷원래의
2018-05-23 15:44:551993검색

이 글에서는 주로 데이터베이스에 있는 수백만 개의 데이터에서 20개의 레코드를 무작위로 얻는 PHP 방법을 소개하며, PHP의 간단한 데이터베이스 쿼리 및 난수 연산 관련 기술이 필요하면 참고할 수 있습니다.

1 먼저 통계를 작성하세요. 데이터베이스에서 레코드 수(1시간에 한 번 다시 계산하는 등 데이터 캐시로 사용됨),

2. 총 레코드 수를 기준으로 한 번에 20개의 레코드를 무작위로 검색합니다(물론 이는 동일합니다). 페이징하는데 요구사항은 높지 않습니다) 그렇다면 이것이 가장 빠르며 이것이 제가 사용하는 것입니다)

또 다른 방법이 있습니다. 20번을 무작위로 추출하고 20번 반복하는 것입니다.

예:

$sum=800000;//得到总条数
//循环取数据
for($i=1;$i<=20;$i++){
  $offset=mt_rand(1,$sum);
  //控制重复对比的,请自行实现
  //数据库取数据的,请自行实现
  $sql="select * from table limit $offset,1";
  echo $sql;
}

위 내용은 이 글의 전체 내용이므로, 모든 분들의 공부에 도움이 되길 바랍니다. ㅋㅋㅋ

PHP

page_php 팁에 소요된 시간을 기록하는 방법

위 내용은 데이터베이스에 있는 수백만 개의 데이터에서 무작위로 20개의 레코드를 얻는 PHP 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.