如果value不为null,则mysql选择不同的记录

时间:2015-08-24 05:19:22

标签: mysql

我试图根据一列从表中选择一条记录,但如果该记录包含另一条记录的映射ID,则应该选择映射的记录。例如在下表中:

id  name  mapping  
1   neil  2
2   Neil  NULL
3   bob   NULL
4   Bob   NULL

如果我搜索" neil"我想返回记录2,因为它有一个映射记录;但如果我搜索" bob"我应该返回记录3,因为它没有映射。

像这样的命令(但它会返回错误):

SELECT IF (
SELECT mapping FROM tbl_names WHERE name LIKE "neil" is null,
SELECT id, name FROM tbl_names WHERE name LIKE "neil",
SELECT id, name FROM tbl_names WHERE id = (SELECT mapping FROM tbl_names WHERE name LIKE "neil"
)

0 个答案:

没有答案