MYSQL bir veri kümesi her X yüzdelik değerler seçilmesi

0 Cevap php

Ben 50k satır veri kümesi var ve sıralı bir dizi her 10 yüzdelik değerini seçmek istiyorum. İdeal eşit NULL olmayan değerlerin aralıklı 11 değerler, dönecekti.

Ben tüm sütunu seçerek ve PHP yapıyor önlemek için çalışıyor, ya da 10 sorguları, toplam sayısı dayalı tek bir satır seçerek her yapıyorum.

This will be done 7 times per user request for different columns. (Other query parameters will change, so I can't cache it.)


Güncelleme: Ben bunu önlemek için çalışıyorum:

$query = "SELECT BLAH BLAH" ;
$result = mysql_query($query);
$num_of_results = mysql_num_rows($result);

//divide count by 10 to get percentile sizes
$number_of_percentiles= 10;
$percentile_size = $num_of_results/ $number_of_percentiles;

//take each of the percentiles of the sample set

for ($a=0; $a<= $number_of_percentiles; $a++){

  $query = "SELECT BLAH BLAH
  LIMIT ". ($a * $percentile_size ).",1";

  $result = mysql_query($query);
  $percentile_array[] = mysql_fetch_assoc($result);
}

0 Cevap