mysql - 检索列中不包含值的行

标签 mysql sql

我有一个如下所示的 MySQL 表:

| ID |  userIDs  
---------------
|  1 | 4,3,5   
|  2 | 2,3
|  3 | 1,2,3

我想检索 userIDs 不包含 1 的所有行。 我试过了

SELECT * FROM tablename  WHERE 1 NOT IN (userIDs)

但它不起作用。

最佳答案

使用FIND_IN_SET

SELECT * FROM tablename  
WHERE find_in_set(1, userIDs) = 0

但实际上你更应该改变你的表格设计。切勿在单个列中存储多个值!

关于mysql - 检索列中不包含值的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27504024/

相关文章:

php - 将修改后的预序树遍历数据放入数组中

php - Mysql PK 和 FK char(36) 与 int(10)

php - 如何在共享托管平台上使用 PHPMyAdmin 中的触发器创建审核跟踪?

c# - SQL 表参数

sql - 数据库中的黑白功能和传递依赖有什么区别

php - SQL INSERT INTO SELECT 语句

php - 如何在 Doctrine 映射中描述多列外键

sql - 选择给定缺失记录的数据的最新值

ios - 书籍结构(目录)和内容的数据库设计

mysql搜索权重到结果