#mysql #sql
#mysql #sql
Вопрос:
Вот запрос, который я пытаюсь выполнить, чтобы вы поняли, что я пытаюсь сделать. Я пытаюсь использовать подстановочный знак в другом поле, чтобы они совпадали на основе сходства, а не точного совпадения, потому что, например, в wr_report_sites
таблице будет запись Chicago
, где в sites
таблице запись будет Chicago
, IL. Мне просто нужно сопоставить на основе того факта, что оба содержат Chicago
.
DELETE wr FROM WR_reported_Sites wr
INNER JOIN sites s
ON wr.Site_Name LIKE %s.Site_Name%
Комментарии:
1. Пожалуйста, отредактируйте вопрос и включите таблицы, на которые ссылаются, и образцы данных. Спасибо
Ответ №1:
…в таблице wr_report_sites будет запись Чикаго, где в таблице сайтов запись будет Чикаго, Иллинойс…
Условие в ON
предложении должно быть:
ON s.Site_Name LIKE CONCAT('%', wr.Site_Name, '%')
потому что wr.Site_Name
содержится в s.Site_Name
.
Комментарии:
1. Спасибо, что, кажется, сработало отлично. И я все больше и больше узнаю о правильном синтаксисе. Большое вам спасибо.
2. @doctorO20 отлично, если это сработало, и не забудьте принять ответ, нажав на галочку.
Ответ №2:
Может быть это?
DELETE FROM WR_reported_Sites
WHERE Site_Name IN (SELECT wr.Site_Name FROM R_reported_Sites wr INNER
JOIN sites s ON wr.Site_Name LIKE '%' s.Site_Name '%')