Both queries will work like this: DROP TABLE names; CREATE TABLE names (name TEXT); INSERT INTO names VALUES ('Alex'); INSERT INTO names VALUES ('Alexander'); INSERT INTO names VALUES ('Alexandra'); INSERT INTO names VALUES ('Rob'); INSERT INTO names VALUES ('Rhobin'); -- should not match INSERT INTO names VALUES ('Robert');
CREATE TABLE queries (query TEXT); INSERT INTO queries VALUES ('Alex'); INSERT INTO queries VALUES ('Rob'); SELECT name from names t JOIN queries q ON t.name LIKE '%'||q.query||'%'; SELECT name from names where exists ( select query from queries where names.name like '%'||query||'%' ); On Sat, 23 Nov 2019 at 11:34, Gert Van Assche <ger...@gmail.com> wrote: > I think this will work: > > INSERT INTO queries VALUES ('Alex'); > INSERT INTO queries VALUES ('Rob'); > > select * from names > where exists ( > select query from queries > where names.name like '%'||query||'%' > ); > > On Fri, 22 Nov 2019 at 15:19, David Raymond <david.raym...@tomtom.com> > wrote: > >> Or alternatively something like: >> >> select * from table >> where exists ( >> select query from queries >> where table.name like query >> ); >> >> _______________________________________________ >> sqlite-users mailing list >> sqlite-users@mailinglists.sqlite.org >> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users >> > _______________________________________________ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users