LIKE CONCAT в LEFT JOIN не срабатывает

170
16 января 2019, 18:40

Есть запрос

SELECT
    `t1`.`name` as `t1name`,
    `t2`.`name` as `t2name`
FROM `catalog_1` as `t1`
LEFT JOIN `catalog_2` as `t2`
    ON `t1`.`name` LIKE CONCAT('%',`t2`.`name`,'%')

Выбираем из таблицы 2 записи похожие на записи таблицы 1. Вроде все просто. Данные очень простые, типа

+++++++++++++++++++++++++++++
+ t1name      + t2name      +
+++++++++++++++++++++++++++++
+ Товар 3 Кр  + Товар 3     +
+ Товар 3 Сн  + Товар 3     +
+ Товар 3 Бл  + Товар 3     +
+ Товар 3 Чр  + Товар 3     +
+ Товар 5 Кр  + Товар 5     +
+ Товар 9 Кр  + Товар 9     +
+++++++++++++++++++++++++++++
// `таблица 1`.`Товар 3 Кр` ~= '%',`таблица 1`.`Товар 3`,'%'

Все что выше все нормально, более длинные записи из Таблицы 1 и более короткие записи из таблицы 2

Но если поменять таблицы местами, то запрос не находит в таблице 2 ничего

SELECT
    `t1`.`name` as `t1name`,
    `t2`.`name` as `t2name`
FROM `catalog_2` as `t1`
LEFT JOIN `catalog_1` as `t2`
    ON `t1`.`name` LIKE CONCAT('%',`t2`.`name`,'%')
// теперь FROM `catalog_2` as `t1` и LEFT JOIN `catalog_1` as `t2`
+++++++++++++++++++++++++++++
+ t1name      + t2name      +
+++++++++++++++++++++++++++++
+ Товар 3     + <NULL>      +
+ Товар 5     + <NULL>      +
+ Товар 9     + <NULL>      +
+++++++++++++++++++++++++++++

И вот тут не понимаю

//мне казалось
// `таблица 2`.`Товар 3` ~= '%',`таблица 1`.`Товар 3 Кр`,'%'

Подскажите, как написать запрос, что бы SELECT выполнить к таблице 2, с короткими названиями и сопоставить ее с Таблицей 1, с длинными названиями

p.s. исправил свой вопрос, т.к. некорректно выразился

READ ALSO
Как прописать ::before внутри style=&ldquo;&rdquo;?

Как прописать ::before внутри style=“”?

Примерно так должно выглядить, но как реализовать не знаю может есть что-то подобное? Атрибуты тамИ нет через css и не как потому-что у меня...

197
Разница между vh vw и % ,что лучше?

Разница между vh vw и % ,что лучше?

Разница между vh vw и % ,видел в интернете ,но не уловил сути,что лучше использовать vw или % для размеров и лучше для чего именно его использовать,для...

188