MySQL内爆子查询结果并在WHERE IN中使用

时间:2015-05-29 07:36:21

标签: mysql subquery where implode

SELECT name FROM users WHERE id 
  IN ((SELECT manager FROM users_info WHERE id_user = 1))

此处WHERE IN ()中的子查询以此格式返回一列和一行,例如12,13(如果是ID,则为内爆数组)

但是整个SELECT仅返回name = id的{​​{1}}。它应该返回2行。我尝试在子查询上使用12函数,但只有一个结果。

1 个答案:

答案 0 :(得分:0)

使用FIND_IN_SET ()

 SELECT `name` FROM `users` WHERE FIND_IN_SET (`id`,( SELECT `manager` FROM `users_info` WHERE `id_user`='1' )) >0;