SQL Like Abfrage in doppelten Prozentzeichen: Unterschied zwischen den Versionen

Aus Contao Community Documentation

(Die Seite wurde neu angelegt: „Eine Like Abfrage in doppelten Prozentzeichen eingeschlossen ist ein bischen trickreich zu lösen. Will man dieses SQL Statement umsetzen: <pre> SELECT * FROM tl_…“)
(kein Unterschied)

Version vom 9. Juli 2010, 12:16 Uhr

Eine Like Abfrage in doppelten Prozentzeichen eingeschlossen ist ein bischen trickreich zu lösen. Will man dieses SQL Statement umsetzen:

SELECT * FROM tl_xyz WHERE title LIKE %Suchbegriff%;

muss man wegen der automatischen Apostrophierung die Prozentzeichen mit in den Parameter verlagern:

$this->Database->prepare("SELECT * FROM tl_xyz WHERE title LIKE ?")
               ->execute('%Suchbegriff%');

bzw. mit Inhalt des Suchbegriffes in der Variable $varKeyword:

$this->Database->prepare("SELECT * FROM tl_xyz WHERE title LIKE ?")
               ->execute('%'.$varKeyword.'%');

Natürlich kann man hier auch das eine oder andere Prozentzeichen weglassen, wenn man in den Daten am Anfang oder Ende eines Datenfeldes suchen möchte.



--BugBuster 13:16, 9. Jul. 2010 (CEST)

Ansichten
Meine Werkzeuge

Contao Community Documentation

die Liste ist länger als ich und lindes zusammen...

Yanick Witschi
Navigation
Verstehen
Verwenden
Entwickeln
Verschiedenes
Werkzeuge