我有ProjectTab列,它的值是:8,10,12,14(varchar)-它可以分配给多个选项卡。
有没有办法让where语句说search all where ProjectTab=10?
我试过但没成功:

SELECT * FROM `ProjectTabs`
WHERE ProjectTab IN (10)

好像接线员不是答案。它可以是,但我的字段必须是,8,10,12,14,并且运算符应该是这样的,ProjectTab应该是“%”,10,“%”
我觉得这很糟糕。。
求求你,救命。

最佳答案

虽然这是一个糟糕的设计,您应该考虑重构它,但MySQL会用FIND_IN_SET把您从这个洞里挖出来:

SELECT * FROM `ProjectTabs`
WHERE FIND_IN_SET('10', ProjectTab );

sqlfiddle:http://sqlfiddle.com/#!2/045d1/1

10-05 22:10