我有一张桌子
mid muid actor_name movie_list(varchar)
18 act_6 tom hanks mov_18,mov_19,mov_2,mov_22,mov_23
21 act_9 jhonny depp mov_1,mov_10,mov_20,mov_22,mov_3,mov_9
28 act_16 bruce willis mov_18,mov_19,mov_2,mov_22,mov_23
29 act_19 jhon trovolta mov_1,mov_10,mov_20,mov_22,mov_3,mov_9
现在我想只在actor_name
muid
和mov_1
movie_list
(来自php)的EXIST
如果我使用 `SELECT muid,actor_name FROM table_movie WHERE $movieID EXIST( movie_list)`
然后显示错误,我的查询将写在下面
RLIKE
我也试过{{1}}但没有结果!:(
请告诉我如何从varchar字段中搜索单个单词
我的表引擎是INNODB所以全文搜索概念也失败了
答案 0 :(得分:0)
怎么样?
SELECT muid,actor_name FROM table_movie WHERE movie_list LIKE '%,$movieID,%'
OR movie_list LIKE '%,$movieID'
OR movie_list LIKE '$movieID,%'
OR movie_list LIKE '$movieID'
编辑:我修改了查询以考虑注释。有点难看,但我想它会起作用。忘记表现。另一个问题是带有逗号的标题。
如果你可以修改schem,你可以有一个'movie'表和'actor_movie'表。