gpt4 book ai didi

php - MySQL PHP 'Filter' 用于服务

转载 作者:行者123 更新时间:2023-11-29 12:00:26 25 4
gpt4 key购买 nike

我一整天都在绞尽脑汁想弄清楚这个问题!希望大家能够帮忙。

我正在构建一个 PHP 系统,它将过滤掉 MySQL 表中“供应商”的记录。

服务存储在一个表中,如下所示:

id
service

供应商存储在一个表中,如下所示:

id
company_name

经过大量阅读后,我添加了一个附加表,将供应商链接到其相应的服务:

id
supplier_id
service_id

一个供应商可以提供多种服务。

当用户单击过滤器(点击时带有 jQ​​uery 的跨度标签,捕获所单击的服务的 ID)时,我想显示提供该服务的供应商。当用户单击附加服务时,我只想显示提供这两种服务的供应商。等等...

我正在努力确定 a) 这是正确的前进方式吗? b) SQL 的用途是什么。目前,我使用 $.GET 将附加服务 ID 传递给 PHP,并将其中的字符串以 CSV 形式存储在 session 变量中。

提前非常感谢,

詹姆斯

最佳答案

  1. is this the correct way forward

    到目前为止,我觉得似乎不错。

  2. what the SQL would be for it

    要获取提供同时服务 ID 4服务 ID 7 的所有供应商的详细信息,您可以先加入表格,然后按供应商对它们进行分组,并过滤结果组中包含所需匹配项的组:

    SELECT   p.*
    FROM suppliers p
    JOIN supplier_services a ON a.supplier_id = p.id
    GROUP BY p.id
    HAVING SUM(a.service_id = 4)
    AND SUM(a.service_id = 7)

    为了提高此查询的性能,您可以放入 WHERE a.service_id IN (4,7) - 如果 supplier_services( 上有索引,这将特别有用供应商_id、服务_id)

关于php - MySQL PHP 'Filter' 用于服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32466987/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com