danash Ответов: 1

MS SQL like clause help


Я запускаю это утверждение ниже, и оно отлично работает,

Я хочу изменить соединения На = На "нравится" заявление, в котором М.[имя] как S.[2020title] но .....

Иногда в названии может быть добавлено дополнительное слово, например "Великий Гэтсби против Великого Гэтсби".

Не имея никакого успеха. Может ли кто-нибудь указать мне правильное направление

Что я уже пробовал:

  update [dbo].[mstr2019]
set [mstr2019].[2020ISBN] = S.[2020isbn], [mstr2019].[2020title] = S.[2020Title]
From Sellers S
INNER JOIN   dbo.[mstr2019] M
on m.[Name] = s.[2020TITLE]
where s.FORMAT = 'Boxed' and m.Format='Boxed'

1 Ответов

Рейтинг:
11

OriginalGriff

В принципе, нет. И если бы вы могли, производительность была бы ужасной (вот почему вы не можете этого сделать). Соединение-это в основном "мультисравнение": сравнение каждой записи одной таблицы с каждой записью другой, и LIKE не является индексируемой операцией, поэтому SQL по понятным причинам визжит от этой идеи.

Вы действительно хотите использовать LIKE в качестве SELECT WHERE и, возможно, присоединиться к этим результатам - но даже тогда это, вероятно, признак дизайна БД, который нуждается в некотором переосмыслении.