Volltextsuche

Hallo zusammen,

ich verwende SQL (8.0) um in Tabellen per

--Fragment
upper(additionalSearchStrings) like @contains

Datensätze zu suchen. @contains beinhatltet dabei den Suchtext, den ich vorab auch mit upper und %@contains% ergänzt habe. Das funzt soweit auch gut, aber:

In Suchmaschinen kann man auch mit and or etc arbeiten oder mit „“ Wortgruppen erzeugen. Da ich mit der sleben Suchseite auch per Index-Server suchen möchte, würde ich gerne dessen Syntax zulassen, also z.B.:

Auto und (rad oder motor)

Wobei und/and oder oder/or verwendet werden können.

Wie kann man eine solche Anfrage in eine SQL Syntax „übersetzen“?

ME könnte man entweder vorab bereits das SQL-Statement zusammensetzen oder alles in SQL realisieren. In beiden Fällen fehlt mir aber eine Idee, wie das aussehen sollte. Da ja zig Suchmaschinen existieren hoffe ich, dass jemand sowas schon mal gemacht hat oder einen Link dazu kennt. Auch wenns kein SQL ist, das sollte man dann schon anpassen können…

Vielen Dank vorab!

mfg

Dirk.Pegasus

Hallo Dirk,

Du hast nicht besonders viele Datensätze nicht wahr :smile: ? Aber zu Deiner Frage: Du must Dein contains nach Auto, Rad und Motor (containsPart1, …, containsPartn) zerlegen und die SQL-Where Bedingung entsprechend erweitern:

–Fragment
where
upper(additionalSearchStrings) like @containsPart1
and (upper(additionalSearchStrings) like @containsPart2 or
upper(additionalSearchStrings) like @containsPart3)

Das Ganze kann also nur über eine Zeichenkette funktionieren, in den man das Statement zusammenbaut.

MfG Georg V.

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo zusammen,

hatte ich befürchtet, werde mal unter c#/.net posten ob da mal einer „einen Parser“ gebastelt hat.

Vielen Dank!,

Dirk.Pegasus

Hallo Georg,

hab mir Contains nochmal angeshen, das kann auch „Ausdrücke“ verarveiten. Aber auch die sind nicht ganz „menschenwürdig“. naja, werd mal weiter suchen.

mfg

Dirk.Pegasus