Как написать запрос чтобы выбрать ID у которых значения tbl2.value входят в tabl1.value. По логике делается это через Like, но проблема в том, как прописать символы % в запросе?
SELECT `tbl1`.`id` FROM `tbl1`, `tbl2` WHERE `tbl1`.`value` LIKE `tbl2`.`value`
Мне кажется так: SELECT `tbl1`.`id` FROM `tbl1`, `tbl2` WHERE `tbl1`.`value` LIKE CONCAT('%',`tbl2`.`value`,'%')
Просто на всякий случай: надеюсь вы понимаете насколько ресурсоемок такой запрос и применяете его для какой-то разовой выборки «для себя» а не в боевом приложении?
Запрос выполняемый пару раз в день лочит таблички и если идут активные вставки, то будет огребаться в виде тормозов. Да и данный запрос чрезмерно ресурсоемок. Сравнить каждый с каждым, представьте, что в каждой базе миллион записей, получим всего лишь триллион сравнений.