Sonderzeichen bei Volltextsuche
Robert
- datenbank
Hallo ihr lieben,
ich habe vollgendes Problem bei der Volltextsuche:
Ich will eine Spalte durchsuchen "Beschreibung" dort befinden sich Texte die auch Sonderzeichen enthalten. Die Umlaute wurden vorher gewandelt aus ä wurde ä etc. Die / und \ wurden ohne Umwandlung in die DB geschoben. Nun meine Frage wie kann ich nach zum Beispiel "/usr/test/" suchen?
Wenn ich es mit dem select unten suche, wird nur nach usr gesucht.
Die Probleme tauchen bei ? $ / \ auf. Habt ihr ideen??? Mache ich da was falsch?
Version: MYSQL 4.
SELECT lid, wissen, loesung FROM kdb_loesungen WHERE MATCH (kurzbeschreibung, meldung, beschreibung) AGAINST (' +/usr/' IN BOOLEAN MODE) AND (anwendung_id like '%' AND userid like '%' AND abteilung_id like '%' AND (typ_id like '%' OR typ_id is NULL)) ORDER BY loesung, datum DESC;
Für eine Antwort wäre ich Dankbar.
Hi !
Könnte vielleicht was bringen:
/usr/ -> /usr/
\usr\ -> \usr\
$usr -> $usr
mit dem ""-Zeichen werden die Sonderzeichen escaped.
Gruß
Hans
Hi !
Könnte vielleicht was bringen:
/usr/ -> /usr/
\usr\ -> \usr\
$usr -> $usr
mit dem ""-Zeichen werden die Sonderzeichen escaped.
Gruß
Hans
So einfach ist es leider nicht.
Die folgende Abfrage sollte nur nach $ORACLE_HOME/bin suchen, MYSQL findet jedoch auch Datensätze wo entweder nur bin oder nur $ORACLE_HOME steht. Ob nach dem / gesucht wird kann ich leider nicht sehen.
SELECT lid, wissen, loesung FROM kdb_loesungen WHERE MATCH (kurzbeschreibung, meldung, beschreibung) AGAINST (' +$ORACLE_HOME/bin' IN BOOLEAN MODE) AND (anwendung_id like '%' AND userid like '%' AND abteilung_id like '%' AND (typ_id like '%' OR typ_id is NULL)) ORDER BY loesung, datum DESC;