Heim >Backend-Entwicklung >PHP-Tutorial >Das Format der Ausdrucksabfrage in der thinkPHP-SQL-Anweisung
Für Abfragen, bei denen eine Fuzzy-Beurteilung erforderlich ist, z. B. SQL-Abfragen wie „größer als“, „gleich“ und „kleiner als“, können Sie die Ausdrucksabfragemethode verwenden.
Format des Abfrageausdrucks: $map['Feldname'] = Array('Ausdruck','Abfragebedingung');
PS: Der Ausdruck unterscheidet nicht zwischen Groß- und Kleinschreibung empfindlich.
Beispiel:
//EQ: gleich (=)
$map['id'] = array('eq', 1); //wo ist id=1
/ /NEQ: Ungleich ()
$map['id'] = array('neq', 1); //wo ist id1
//GT: größer als (>)
$map['id'] = array('gt', 1); //wo ist id>1
//EGT: größer oder gleich (>=)
$ map['id'] = array('egt', 1); //wo ist id>=1
//LT: kleiner als ($map['id'] = array(' lt', 1); / /wobei id//ELT: kleiner oder gleich ($map['id'] = array('elt', 1); /where is id //[NOT]LIKE: Fuzzy query
$map['user'] = array('like', '%小%'); //where is like %小%
//[NOT]LIKE :Fuzzy query
$map['user'] = array('notlike', '%小%'); //where is not like %小%
/ /[NOT]LIKE: Array der Fuzzy-Abfragemethode
$map['user'] = array('like', array('%小%', '% Wax%'), 'AND');
//Generiertes SQL
SELECT * FROM `think_user` WHERE ( (`user` LIKE '%小%' AND `user`
LIKE '%wax%') )
//[NOT] BETWEEN :Intervallabfrage
$map[ 'id'] = array('between','1,3');
//wobei `id` ZWISCHEN '1' UND '2' ist
// Wie oben und äquivalent
$map[ 'id'] = array('between',array('1','3'));
//[NOT] BETWEEN: Intervallabfrage
$ map['id'] = array('not between','1,3');
//wobei `id` NICHT ZWISCHEN '1' UND '2' ist
//[NOT] IN: Intervallabfrage
$map['id' ] = array('in','1,2,4');
//where is `id` IN ('1','2','4 ')
//[NOT] IN :Interval query
$map['id'] = array('not in','1,2,4');
//where is `id ` NOT IN ('1','2' ,'4')
//EXP: Angepasst
$map['id'] = array('exp','in (1,2,4) ');
//where is `id` NOT IN ('1','2','4')
PS: Verwenden Sie exp, um die where-Anweisung anzupassen und direkt in den zweiten Parameter zu schreiben
//EXP: Anpassen, um eine ODER-Anweisung hinzuzufügen
$map['id'] = array('exp', '=1');
$map['user'] = array('exp', '="Crayon Shin-chan"');
$map['_logic'] = 'OR';
//WHERE is ( (`id` =1) ) OR ( (`user` =" Crayon Shin-chan") )