通过选择两个索引列来选择多行

时间:2015-12-14 21:52:07

标签: mysql

我试图通过指定相同列的条件从product_parameter表中选择所有productId。这是工作示例

SELECT PROD.productId FROM product PROD
LEFT JOIN product_parameter PARAM ON PROD.`productId` = PARAM.`productId`
WHERE PROD.`publish` = 1 AND ( PARAM.`parameterId` = "264" AND PARAM.`valueId` = 10 ) 

它选择了几种产品

productId parameterId valueId
3328        264         10
3514        264         10
3513        264         10
3512        264         10

当我显示productId 3328或3514的所有参数时,我看到它们有参数ID 247和valueId 60 IN COMMON,现在这里是棘手的部分。我想创建一个查询,通过添加另一个条件来选择这两个productId,如

AND ( PARAM.`parameterId` = "247" AND PARAM.`valueId` = 60 ) 

但逻辑上它无法工作因为我试图选择一行应该包含两个valueId(没有意义)我一直在研究几个产品参数系统p.e. joomshopping为每个新参数使用单独的列,在我的情况下,每行创建600多列

非常重要我知道我可以在每个参数GROUP之间放置OR但是这会给我一些现有的所有产品用于组合这些条件我的目标是选择 EXACT 数量的productIds满足我的条件任何IDEAS?

0 个答案:

没有答案