Сравнить подстроку из 2 таблиц - PullRequest
0 голосов
/ 25 апреля 2019

Я пытаюсь запустить запрос, который сравнивается, если подстрока из столбца существует в другом столбце:

Таблица «Трекер» содержит столбец «URL-адреса» с отслеживающими доменами.Таблица «Сканирование» Содержит столбец «TargetUrl» с URL-адресами.

Я хочу проверить, присутствует ли домен отслеживания в TargetUrl и, если это так, объединить их, чтобы у меня были все данные из обеих таблиц вместе.

Таблицы выглядят примерно так:

Таблица отслеживания

+----+---------------+----------------+-------------------------------+
| ID | Category      | Entity         |Urls                           |
+----+---------------+----------------+-------------------------------+
|  1 | Sessionreplay | Hotjar         | hotjar.com                    |
|  2 | Analytics     | Sometool       | somesite.com                  |
|  3 | Adverts       | Someothertool  | someothersite.com             |
+----+---------------+----------------+-------------------------------+

Таблица сканирования

+----+---------------+---------+------+-------------------------------+
| ID | Mainpage      | Some Data      |TargetUrl                      |
+----+---------------+---------+------+-------------------------------+
|  1 | xyz.com       | 111111         | https://script.hotjar.com/1232|
|  2 | yzx.com       | 22222222       | https://somesite.com/423423   |
|  3 | zxy.com       | 3333333333333  | notrackingscript.com          | 
+----+---------------+----------------+-------------------------------+

Это то, как далеко я получил

SELECT * FROM Crawl WHERE Crawl.TargetUrl like '%hotjar.com%' 

Возвращает все из таблицы сканирования, где в столбце TargetUrl присутствует "hotjar.com".

Может ли кто-нибудь из вас, гуру SQL, помочь новичку с этим запросом?

1 Ответ

0 голосов
/ 25 апреля 2019

Вы можете объединить таблицы с оператором LIKE:

select *
from crawl c inner join tracker t
on c.targeturl like '%' || t.urls || '%'

это вернет все столбцы из обеих таблиц.
Вы можете изменить это, выбрав такие столбцы, как:

select t.id, t.category, c.mainpage, ...

Условием объединения является то, что column tracker.urls содержится внутри столбца crawl.targeturl.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...