我有一個商品價格表,有一些條件。在這裏,我嘗試顯示從類別和價格中排序的商品數量。顯示數據從最高值排序
代碼片段:
<?php
include_once 'db.php';
$price = 'Price : $10';
$sql = $DBcon->query("SELECT DISTINCT category FROM mytable WHERE article LIKE '%{$price}%' LIMIT 10");
while ($Row = $sql->fetch_array()) {
$category = "PROMO";
$Total = $DBcon->query("SELECT title FROM mytable WHERE article LIKE '%{$price}%' AND category='".$category."'");
$item = $Total->num_rows;
echo "<li><a href='/tag/". $category ."'>". $category ."</a> (" . $item . " item)</li>";
}
?>
上面的代碼工作得很好,對我來說有一個問題。
在數據庫上的實際數據是:
- 衣服:23個資料
- 褲子:19個資料
- 外套:4項
- 襯衫:11項
- 手袋:7項
- 然後..
我想根據最多的項目數來顯示類別。但上面的腳本代碼的結果是隨機顯示的。即使最多的項目有時也不會出現。
我知道我的代碼有問題,但不知道如何解決它。請幫幫我。
['ORDER BY'(https://www.w3schools.com/sql/sql_orderby.asp)製成正是爲 – litelite
我看你是不使用聚合函數,我認爲你應該改變你的查詢,以獲得對類別的依賴,並按次數排序 –