Wie verwende ich eine LIKE-Abfrage mit CodeIgniter?

8

Ich möchte eine Abfrage wie folgt ausführen:

%Vor%

In CI können Sie Parameter an Abfragen binden, wenn Sie field=? verwendet haben, dies funktioniert jedoch nicht für field LIKE "%?%" . Von der Debugging-Ausgabe scheint es, dass die verwendete Abfrage field LIKE "%'search'%" ist.

Gibt es eine alternative Möglichkeit, in CodeIgniter zu suchen?

    
DisgruntledGoat 19.09.2010, 14:12
quelle

4 Antworten

16

Sie können diese Abfrage verwenden:

%Vor%

Und bind mit %search% anstelle von search .

Sie sollten wissen, dass diese Abfrage in MySQL langsam ist. Vielleicht möchten Sie sich stattdessen die Freitextsuche ansehen (Lucene, Sphinx oder die eingebaute Freitextsuche von MySQL).

    
Mark Byers 19.09.2010, 14:15
quelle
2

Dies ist eine aktive Record-Klasse für Codeigniter

%Vor%

Sie sollten das versuchen .. Ich denke, es hilft Ihnen .. beides bedeutet% Spaltenname%, Vorher bedeutet% Spaltenname, after bedeutet Spaltenname%

    
Snap Mash 14.09.2013 06:19
quelle
1
%Vor%     
dulaj sanjaya 20.04.2017 07:36
quelle
0

was ich verstehen kann CI fügt Anführungszeichen hinzu, übergibt FALSE als dritten Parameter während der Bindung, um zu verhindern, dass CI Anführungszeichen hinzufügt.

    
Sandy 19.09.2010 14:26
quelle

Tags und Links