0
무작위 순서로 상위 16 개 결과 (순위라는 필드로 정렬 됨)를 반환하도록 데이터베이스를 쿼리하려고합니다.MySQL : 무작위 순서로 상위 16 개 결과를 반환하십시오.
반환 된 (및 정렬 된) 16 개의 결과를 PHP를 사용하여 PHP가 사용할 배열을 조정하여 쉽게 바꿀 수 있습니다. 쿼리 자체에서이 작업을 직접 수행하는 쉬운 방법이 있는지 궁금합니다.
무작위 순서로 상위 16 개 결과 (순위라는 필드로 정렬 됨)를 반환하도록 데이터베이스를 쿼리하려고합니다.MySQL : 무작위 순서로 상위 16 개 결과를 반환하십시오.
반환 된 (및 정렬 된) 16 개의 결과를 PHP를 사용하여 PHP가 사용할 배열을 조정하여 쉽게 바꿀 수 있습니다. 쿼리 자체에서이 작업을 직접 수행하는 쉬운 방법이 있는지 궁금합니다.
는 힌트
select * from
(
select * from your_table
order by rank
limit 16
) x
order by rand()
감사를보십시오. –
이 쿼리는 항상 쿼리에서 사용하는 인덱스를 기반으로 동일한 16 개의 결과를 반환하지 않습니까? –
@AdrianCornish : OP가 상위 16 개 값을 ('랭크 (rank)'로) 원한다면 그 값을 뒤섞습니다. –