У меня есть свободный стиль текста в столбце A (исходная строка) таблицы A. Я пытаюсь проанализировать столбец A с каждым значением в столбце B (подстрока) таблицы B. Чтобы узнать, является ли какая-либо из подстрок в столбце bприсутствует в столбце A. если подстрока присутствует, то я хочу получить соответствующий столбец C (категория) как результат
Я смог добиться этого для меньшего набора данных с помощью операторов case, как показано ниже, но у меня есть списокподстрока и увеличение категории.Как мне это сделать?
SELECT A.sourcestring, A.primarykey, B.substring, B.category,
CASE
WHEN lower(sourcestring) IS NULL THEN NULL
WHEN lower(sourcestring) RLIKE '%blister|burn|fire|grill|hot|lighter|oven|scald|scorch|stove|torch|welder%'
THEN 'burn '
ELSE 'other'
END
Таблица A
sourcestring
"i am here"
"he is here"
Таблица B
substring | category
"here" | "present"
"not" | "not present"
"mad" | "not related"
Я хочу, чтобы результирующая таблица была
Таблица c
sourcestring resultcategory
"i am here" "present"
"he is here" "present"