gpt4 book ai didi

php - MySQL 仅使用 MySQL 获取结果

转载 作者:行者123 更新时间:2023-11-29 08:33:07 24 4
gpt4 key购买 nike

假设我有一个如下图所示的 MySQL 表,我想找到任何具有过滤器 2 和 5 的 product_id(因此在表中,这将是 30 的 Product_id),这在 MySQL 中可能吗?或者我是否必须获取 filter_id 为 2 OR 5 的产品 id,并在 PHP 中对其进行排序?

sql table

最佳答案

SELECT Product_id, COUNT(*) AS i FROM mytable WHERE filter_id IN (2,5) GROUP BY Product_id HAVING i = 2;

这将匹配包含任何所需filter_id 的任何行,并将具有相同product_id 的行分组在一起。名称 i 已指定给一列,该列给出了组中的行数。假设product_id到filter_id的每个组合都是唯一的,那么您就知道任何包含两行的组都将与两个filter_id匹配,因此HAVING子句最终将过滤掉仅与其中一个filter_id匹配的行。

关于php - MySQL 仅使用 MySQL 获取结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15997703/

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