SQL: поиск повторяющихся значений в поле, но с использованием SubString () - PullRequest
1 голос
/ 12 августа 2010

Вот вопрос для всех этих экспертов SQL SERVER 2000:

У меня есть только 1 таблица ... Я уже могу найти, появляется ли какое-либо из значений в определенном поле, также в другой записи.

И.Е .: Есть ли записи «ABCDEFGHI» в поле, а затем "ABCDEFGHI" снова в том же поле ... но в другой записи.

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

I.E .: Есть ли в любой записи "CDEF" в поле, а затем снова «DEFG» в этом то же поле ... но в другой записи. (Изменить: Конечно, это не будет совпадение.)

Я пытаюсь сравнить ЧАСТЬ одного поля с ЧАСТЬЮ другого. Сравнивайте только символы 3-6 символов с символами 4-7. (Мне нужно указать свои собственные начальные и конечные диапазоны для обоих полей.) Какие конкретные буквы ... не имеет значения. Просто они «совпадают».

Это не похоже на работу:

SELECT t1.ID + ' + ' + t2.ID  
FROM InfoTable As t1         
INNER JOIN InfoTable AS t2     ON t1.ID = SUBSTRING(t2.ID, 3, 4) 

(Изменить: мне также НЕ нужно перечислять какие-либо записи, которые просто совпадают.)

1 Ответ

1 голос
/ 12 августа 2010

Возможно

SELECT t1.ID + ' + ' + t2.ID  
FROM InfoTable As t1         
INNER JOIN InfoTable AS t2     ON SUBSTRING(t1.ID,3,6) = SUBSTRING(t2.ID, 4, 7) 
...