select * from tt where find_in_set(city,'nb,sh,sz')>0
create table A(id int, title varchar(10), city varchar(5)); insert into A(id,title,city) values (1,'haha','nb'); insert into A(id,title,city) values (2,'haha','sh'); insert into A(id,title,city) values (3,'haha','sz'); insert into A(id,title,city) values (4,'haha','nb'); insert into A(id,title,city) values (5,'haha','nbb'); insert into A(id,title,city) values (6,'haha','szs'); create table CityAuthority(title varchar(10), au varchar(100)); insert into CityAuthority select 'haha','nb,sh,sz';select A.* from A , CityAuthority B where A.title = B.title and find_in_set(A.city, B.au) > 0;
create table A(id int, title varchar(10), city varchar(5));
insert into A(id,title,city) values (1,'haha','nb');
insert into A(id,title,city) values (2,'haha','sh');
insert into A(id,title,city) values (3,'haha','sz');
insert into A(id,title,city) values (4,'haha','nb');
insert into A(id,title,city) values (5,'haha','nbb');
insert into A(id,title,city) values (6,'haha','szs'); create table CityAuthority(title varchar(10), au varchar(100));
insert into CityAuthority select 'haha','nb,sh,sz';select A.* from A , CityAuthority B where A.title = B.title and find_in_set(A.city, B.au) > 0;
O(∩_∩)O谢谢 ^_^ 问下这个find_in_set 的执行效率怎么样,如果要提高查询效率该怎么优化或者建立索引?
find_in_set无法用到索引,最好是拆分变量中的内容,从行->列
nb,sh,sz->
nb
sh
sz
再连接处理
find_in_set无法用到索引,最好是拆分变量中的内容,从行->列
nb,sh,sz->
nb
sh
sz
再连接处理
非常感谢,暂时的数据量性能应该没问题,后期在优化吧,现在时间和功能更重要^_^