我试着写一个简单的JOIN,必须满足两个非常基本的条件。考虑这些表:MYSQL有很多加入条件
'attrbibute_variations'
id | attribute_product_variation_id | variation_id
--------------------------------------------------
286 | 136 | 57
287 | 136 | 59
288 | 136 | 73
'变化'
id | attribute_id
-----------------
57 | 1
59 | 5
73 | 12
我想在variations
加入其中,这些ID匹配:
attribute_product_variation_id = 136
AND
variation_id = 57 AND 73
我的SQL是如下,但给出一个空集:
SELECT
*
FROM
`attribute_variations` AS `AttributeVariation`
INNER JOIN
variations` AS `Variation`
ON (
(
(
`AttributeVariation`.`variation_id` = `Variation`.`id`
)
AND (
`Variation`.`id` = 57
)
)
AND (
(
`AttributeVariation`.`variation_id` = `Variation`.`id`
)
AND (
`Variation`.`id` = 73
)
)
)
WHERE
`AttributeVariation`.`attribute_product_variation_id` = 136
似乎很简单,但结果是一个空集?
在此先感谢!
你不能有'Variation'.'id' = 73 AND'Variation'.'id' = 57同时永远不要你重复AttributeVariation'.'variation_id' ='Variation'.'id'因为某些原因。 – Mihai
我需要一种不同类型的JOIN,这并不复杂 –
您的预期结果是什么?通常这是通过聚合来处理的。 – sgeddes