DB是MySQL.有一个表格,结构如下所示:
select * from table1
id column1
-- --------
1 3,4,5
2 3,7,8
Run Code Online (Sandbox Code Playgroud)
并且sql无法正常工作:
SELECT * FROM table1 WHERE 3 in (column1)
Run Code Online (Sandbox Code Playgroud)
我知道桌子的结构不对.但它在我面前完成.你能以这种方式向我推荐什么?或者会执行此sql含义的东西?谢谢.
请将您的桌子标准化.了解为什么在db列中存储逗号分隔值非常糟糕.
如果您不被允许,请使用FIND_IN_SET()功能:
SELECT *
FROM table1
WHERE FIND_IN_SET(3, column1)
Run Code Online (Sandbox Code Playgroud)