我的網站上有一個產品搜索,它使用 sql 查詢來獲取結果。例如:$result=odbc_prepare($connection, "SELECT name, description, brand FROM item_catalog WHERE description LIKE $searchterm");odbc_execute($result); $count = odbc_num_rows($result); if($count >= 1) { while($row = odbc_fetch_array($result)) { echo "<table cellspacing='7px' cellpadding='0' border='0'>"; echo "<tr>"; echo "<td style='vertical-align:top;line-height:0; display:none;'></td>"; echo "<td>" . $row['name'] . "</td>"; echo "<td>" . $row['brand'] . "</td>"; echo "</tr>"; echo "</table>"; } }我希望能夠獲取搜索結果并僅使用品牌字段中的唯一值填充過濾器框。因此,用戶可以根據品牌過濾結果。我只想將獨特的品牌放在一個無序列表中,每個品牌旁邊都有一個復選框。我如何抓住獨特的品牌價值?我玩過 unique_array 但無法讓它工作。請記住,除了品牌之外,還會有更多過濾器。我們可能需要為其填充過濾器的 5-10 個字段。
1 回答

繁花不似錦
TA貢獻1851條經驗 獲得超4個贊
您可以使用DISTINCT如下:
SELECT DISTINCT
brand
FROM item_catalog
WHERE description LIKE ?;
但是你能做的最好的事情就是規范化模式。有一個包含所有品牌的單獨表,并且該表的外鍵位于item_catalog.
- 1 回答
- 0 關注
- 119 瀏覽
添加回答
舉報
0/150
提交
取消