MySQL其中OR查询结果为别名

时间:2017-03-15 09:11:21

标签: mysql sql select

是否可以通过OR-Query

获得结果
SELECT name FROM table WHERE age = 18 OR age = 0

结果:

| name |
----------
| Tim |
| Tom |
| Olli |

但我需要:

结果:

| name | alias |
------------
| Tim | no-age |
| Tom | age18 |
| Olli | age18 |

这可能吗?

1 个答案:

答案 0 :(得分:3)

您可以使用case表达式将年龄转换为您想要的结果。 另请注意,where子句中的条件可以使用in运算符重写,以使其更加优雅:

SELECT name, CASE age WHEN 0 THEN 'no-age' ELSE 'age18' END AS `alias`
FROM   mytable
WHERE  age IN (18, 0)