Verhalten von LIKE "%" bei Postgresql anders als bei MySQL?
Verfasst: Montag 17. Januar 2011, 21:09
Ich habe schon wieder ein seltsames Problem, das ich mir nach einer Stunde Suche immer noch nicht erklären kann.
Ich habe mir eine Suche programmiert. Die entscheidende Zeile sieht so aus (Elixir)
Also "tag" gehen verschiedene Suchbegriffe rein, die immer mit einem % anfangen und enden, zum Beispiel %dip%
Wenn ich als Datenbankserver MySQL finde dann findet er in der Datenbank den Tag "DIP". Postgresql findet ihn nicht. Gebe ich als Suchbegriff zum Beispiel %mega% an
MySQL scheint % als 0 bis beliebig viele Zeichen zu werten, Postgresql dagegen erwartet mindestens 1 Zeichen. Kann das sein? Oder ist das Einstellungssache beim Server? Jedenfalls hab ich hier bei den Servern ein unterschiedliches Verhalten
Ich habe mir eine Suche programmiert. Die entscheidende Zeile sieht so aus (Elixir)
Code: Alles auswählen
Tag.query.filter(Tag.tname.like(tag)).all()
Wenn ich als Datenbankserver MySQL finde dann findet er in der Datenbank den Tag "DIP". Postgresql findet ihn nicht. Gebe ich als Suchbegriff zum Beispiel %mega% an
MySQL scheint % als 0 bis beliebig viele Zeichen zu werten, Postgresql dagegen erwartet mindestens 1 Zeichen. Kann das sein? Oder ist das Einstellungssache beim Server? Jedenfalls hab ich hier bei den Servern ein unterschiedliches Verhalten