为了账号安全,请及时绑定邮箱和手机立即绑定

从搜索查询中获取唯一值以填充搜索过滤器选项

从搜索查询中获取唯一值以填充搜索过滤器选项

PHP
慕雪6442864 2022-06-11 16:59:32
我的网站上有一个产品搜索,它使用 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.


查看完整回答
反对 回复 2022-06-11
  • 1 回答
  • 0 关注
  • 99 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信