Wie findet man ein Wort in SQL?

Wie findet man ein Wort in SQL?

Angenommen, Sie filtern nach Zeilen in einer Spalte, die das Wort „Engineer“ in einer Phrase enthält. Wie kann ich Wörter wie „Engineering“, „Engineered“ oder „Engineers“ ausschließen, wenn ich nicht alle Möglichkeiten kenne?

Beispielzeilen könnten enthalten:

1|System Engineering
2|System Engineer
3|System Engineers
4|System Engineer Department

Daher sollten nur die Zeilen 2 und 4 angezeigt werden.

Ich benutzeWHERE title LIKE '%Engineer%'

Antwort1

WHERE title LIKE '%Engineer' OR title LIKE '%Engineer %'

Die erste WHEREKlausel stimmt mit Ausdrücken wie „Systemingenieur“ überein und die zweite mit Ausdrücken wie „Abteilung Systemingenieur“.

Antwort2

Könnten Sie es mit WHERE title LIKE '%Engineer %' (mit einem Leerzeichen vor dem letzten %) versuchen.

Dadurch soll sichergestellt werden, dass „Ingenieur“ von anderen Wörtern, die das Wort enthalten, getrennt wird.

Antwort3

SELECT * FROM table1 WHERE MATCH (Suchspalte1) AGAINST ("Ingenieur");

UPD: Link zuDokumentation

verwandte Informationen