komplizierte Abfrage (MSSQL)

user_23

Grünschnabel
Hallo zusammen!

Ich versuche folgende Aufgabenstellung zu lösen:
Es existieren zwei Artikel-Tabellen tabelle_1 und tabelle_2. Die Aufgabe besteht darin diejenigen Artikel n aus der tabelle_1 zu finden, die auch in tabelle_2 vorkommen.
Die Artikelbezeichnungen sind oft unterschiedliche geschrieben.

Bsp.:
tabelle_1 (feld_name): Tennisball „Schroeer“, Farbe weiss
tabelle_2 (feld_name): „Schroeer“ Tennisball
Annahme: Beide Artikel sind trotz unterschiedlicher Schreibweise gleich.

Ich möchte mithilfe von CONTAINS und des Volltextindexes eine Abfrage bauen, die folgendes überprüft:
Wenn tabelle_1 (feld_name) aus einem Wort besteht soll überprüft werden, ob dieses irgendwo im tabelle_2 (feld_name) vorkommt.
Wenn sich tabelle_1 (feld_name) aus zwei Wörtern zusammensetzt, wie im obigen Bsp. soll überprüft werden, ob das erste und das zweite Wort aus tabelle_1 (feld_name) an irgendeiner Position in tabelle_2 (feld_name) vorkommen.
Im obigen Fall gäbe es eine Übereinstimmung!

Bis jetzt habe ich das Problem mithilfe von
tabelle_1 (feld_name) LIKE (‘%’+(CASE WHEN tabelle_2(feld_name)…. THEN…. ELSE …. END) lösen können, jedoch ist die ganze Angelegenheit, bei sehr vielen Daten, ziemlich zeitintensiv .
Wie könnte eine Abfrage für mein vorhaben aussehen?

SELECT *
FROM tabelle_1 t, tabelle_2 a
WHERE CONTAINS(t.feld1, a….)
AND…..

Für jede Anregung bin ich SEHR dankbar

LG
User_23
 
Zurück