MySQL选择取决于结果

时间:2014-06-28 06:15:46

标签: mysql

我有一张水果桌:

id    fruit_type    color
--------------------------
 1      apple      yellow
 2      apple      green
 3    strawberry    red

我想从桌子上选择所有水果。但如果它是一个苹果,我只想包括它,如果它是绿色的。 如何在单个MySQL查询中实现该目标?

3 个答案:

答案 0 :(得分:2)

没有什么比这更复杂了,您只需在OR条件下使用WHERE运算符:

SELECT *
FROM fruits
WHERE fruit_type != "apple"
OR color = "green"; /* ie where fruit_type = "apple" and color = "green" */

答案 1 :(得分:0)

我认为你可以使用工会。

Select * from fruits where fruit_type<> 'apple'    
Union
Select * from fruits where fruit_type= 'apple' and color = 'green'

答案 2 :(得分:0)

这里我为sql server创建查询。您可以在mysql

中创建相同的方式
Select id, fruit_type,color from
(
Select 
Case when fruit_type = 'apple' and color <> 'Green'
then 'N' Else 'Y' end as selected, 
*
from fruits )temptable
where temptable.selected = 'Y'

SQLFIDDLE