我尝试使用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')
请帮我解决最佳解决方案......
答案 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)