SQL - 仅限if语句

时间:2017-09-01 17:54:16

标签: mysql sql if-statement null

我需要在SQL查询中设置if-statement而没有else部分。但if-statement语法为IF(<condtion>, <true part>, <false part>)。我没有(不需要设置)else部分的任何值。

示例:从用户表中,如果用户ID大于0,则只需要添加用户ID。我该如何实现/添加这样的条件?

SELECT
    u.fname,
    u.lname,
    IF(u.id>0, u.id, ? )  // Here I do not have value for else part.
FROM
    user_table u;

1 个答案:

答案 0 :(得分:2)

结果行中的每一列都必须包含一个值,即使该值为NULL

SELECT fname, lname, IF(id>0, id, NULL) AS id FROM user_table;

结果集包含许多行,其中一个约束是这些行必须具有相同数量的具有相同定义的列。