@mantovpinets

Как проверить вхождение значения поля одной таблицы в значение поля другой таблицы?

Есть таблица со списком студентов. В этой таблице есть поле "Курс", но при импорте этот курс записался не полностью, то есть, например: название курса: "Возможности применения реставрационных материалов", а при импорте обрезалось и получилось "Возможности применения реставрационных мат". При этом есть таблица с полным списком курсов и их айдишниками и с полными названиями (импортировалось без потерь). Могу ли я как-то заменить в первой таблице название курса на индекс курса из второй таблицы, если в первой у меня только часть названия курса?
  • Вопрос задан
  • 322 просмотра
Пригласить эксперта
Ответы на вопрос 1
0xD34F
@0xD34F
Понятно, что в общем случае этого сделать нельзя. Если есть исходные строки "aaabbb" и "aaaccc", и есть обрезок "aaa", то понять, что было в оригинале не получится.

Но если обрезанные названия курсов не дублируются, то проблем нет:

UPDATE t1
JOIN t2 ON t1.course_name = LEFT(t2.name, LENGTH(t1.course_name))
SET t1.course_id = t2.id;
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы