簡體   English   中英

來自top200的mysql隨機條目

[英]mysql random entries from the top200

有沒有一種更好的方法可以從前200個最暢銷的T恤衫(來自shop_tshirts的tshirt_sales)中返回隨機條目,而該條目只能查詢6個條目而不是200個?

$SQL = "SELECT * FROM shop_tshirts WHERE shop = 'nidieunimaitre' AND online='1' ORDER BY tshirt_sales DESC LIMIT 200";

$Result = mysql_query($SQL)
    or die('A error occured: ' . mysql_error());

$Rows = array();

while ($Row = mysql_fetch_assoc($Result))
    $Rows[] = $Row;

shuffle($Rows);

$i = 0;
foreach($Rows as $Data){
$i++;
    if($i >= 6) { break; }
}

嘗試這個:

SELECT * 
FROM 
      (SELECT * 
       FROM shop_tshirts 
       WHERE shop = 'nidieunimaitre' AND online='1' 
       ORDER BY tshirt_sales DESC 
       LIMIT 200) as tableAlis
ORDER BY RAND() 
LIMIT 6;

返回前200個結果,后按rand訂購,僅返回六個結果。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM