pl/sql фильтрация like

Рейтинг: 0Ответов: 1Опубликовано: 01.05.2023

Есть две таблицы: table1 и table2.

введите сюда описание изображения

Table1 содержит в себе номер аккаунта и "в грязную" написанные имя пользователя, город и сокращенное название города.

Table2 содержит в себе название города и сокращенное название города

Задание: написать запрос, который бы разделил столбец NameCity из table1 на две колонки на основе table2 - если в строке имеется один из городов - вывести только город в отдельную колонку и соответствующее сокращение (или наоборот, если в строке присутствует сокращение - вывести сокращение и соответсвующий город). Ожидаемый результат на скриншоте:

введите сюда описание изображения

Надеюсь, кто-то подскажет решение, все никак не получается реализовать.

UPD: важно разделять именно на основе table2, поскольку строк может быть тысячи UPD2: таблицы table1 и table2 - https://sqlize.online/sql/mysql80/23cd98a68d501f51d7ab91d710d77c9c/

Ответы

▲ 0Принят

онлайн демо для Oracle

select t1.accountnumber, t2.* 
from table1 t1
inner join table2 t2 
    on t1.namecity like '%' || t2.City || '%';