我有一个表名消息。有一个列名 receiver_id
我需要获取 receiver_id = 4 的记录,但我总是得到空输出。
看我的表格截图-
上面的截图有 3 行。第二行和第三行存在 4
以及我需要展开的其他 ID 并显示第二条和第三条记录。
如何编写MySQL查询?
最佳答案
存储逗号分隔值确实是一个糟糕的设计,您应该 normalize
它首先通过将接收者的所有关联存储在联结表中,如果您无法更改架构,那么对于您当前的情况,您可以使用 find_in_set()
在逗号分隔列表中搜索值
select * from table
where find_in_set(4,receiver_id ) >0
关于mysql - 如何从数据库列中分解用户 ID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25977164/