2014-02-22 36 views
0

我有一个数据库,其中包含一些逗号分隔值的字段,如1,8,3,54,5,19,9....。我只想选择2不存在的那些行。查找逗号分隔列表中的特定数字

以下查询用于查找attachedCompanyIDs列中包含数字2的所有字段。但是,我想找到所有行,其中不存在,但在这种情况下我不知道如何使用find_in_set。谁能帮帮我吗?

SELECT name FROM company 
WHERE orderID = 1 AND FIND_IN_SET(2, attachedCompanyIDs); 

回答

2
SELECT name FROM company 
WHERE orderID = 1 AND NOT FIND_IN_SET(2, attachedCompanyIDs); 

SELECT name FROM company 
WHERE orderID = 1 AND FIND_IN_SET(2, attachedCompanyIDs) = 0;