我需要帮助解决这个问题.
在MysqL表中我有一个字段:
FIEld : artist_List Values : 1,5,3,401
我需要找到艺术家uID 401的所有记录
我这样做
SELECT uID FROM tbl WHERE artist_List IN ('401');
我有记录,其中artist_List字段值仅为’401′,但如果我有11,401,则此查询不匹配.
任何的想法 ?
(我不能使用liKE方法,因为如果艺术家uID是3(匹配30,33,3333)…
最佳答案短期解决方案使用FIND_IN_SET function:
SELECT uID FROM tbl WHERE FIND_IN_SET('401',artist_List) > 0
长期解决方案
规范化您的数据 – 这似乎是一个涉及两个表的多对多关系.逗号分隔列表需要转换为它自己的表:
ARTIST_List
> artist_ID(主键,ARTIST的外键)
> uID(主键,TBL的外键) 总结
以上是内存溢出为你收集整理的Mysql WHERE问题以逗号分隔列表全部内容,希望文章能够帮你解决Mysql WHERE问题以逗号分隔列表所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)