如何使用mySQL SELECT IF语句行来加入另一个表?

时间:2009-10-29 07:41:13

标签: sql mysql join

我在mySQL SELECT语句中使用IF语句,并且根据IF语句的返回结果,我想加入另一个表。

EG。 SELECT name,IF(apple ='brown',color1,color2)AS成熟度来自苹果JOIN apple_type ON apple_type.color =成熟度

我的问题是我收到错误消息:'on子句'中的未知列'成熟'。有没有人知道如何根据Select子句中的IF / ELSE结果加入另一个表?

1 个答案:

答案 0 :(得分:6)

您必须在那里复制IF来电。例如:

SELECT
    name,
    IF(apple = 'brown', color1, color2) AS ripeness
FROM
    apples
    JOIN apple_type ON apple_type.color = IF(apple = 'brown', color1, color2)