当我在键控中使用GROUP_CONCAT时,查询没有正确执行

时间:2016-05-24 09:09:41

标签: mysql

我尝试使用NOT IN关键字运行子查询

SELECT DISTINCT(user_id) FROM user_group_master WHERE user_id IN (SELECT GROUP_CONCAT("'",userid,"'") FROM location_sharing_setting WHERE owner_id = '123456' AND sharing_status = 0)

当我们没有使用子查询时,查询正常运行

SELECT DISTINCT(user_id) FROM user_group_master WHERE user_id NOT IN ('56556','540003')

请帮我解决最佳解决方案......

1 个答案:

答案 0 :(得分:1)

您不需要GROUP_CONCAT来使用IN()

SELECT DISTINCT(user_id) 
FROM user_group_master
 WHERE user_id IN (SELECT user_id
                   FROM location_sharing_setting
                   WHERE owner_id = '123456' AND sharing_status = 0)

您可以在IN()语句中指定一个列表,例如'123','234',..

或者您可以指定一个查询,输出与

相同的列
SELECT * FROM Table
WHERE Col IN(SELECT Same_Col FROM OtherTable)