ThinkPHP支持对某个字段的区间查询,例如:
$map['id'] = array(array('gt',1),array('lt',10)) ;
得到的查询条件是: ( id > 1) AND ( id < 10)
$map['id'] = array(array('gt',3),array('lt',10), 'or') ;
得到的查询条件是: ( id > 3) OR ( id < 10)
$map['id'] = array(array('neq',6),array('gt',3),'and');
得到的查询条件是:( id != 6) AND ( id > 3)
最后一个可以是AND、 OR或者 XOR运算符,如果不写,默认是AND运算。
区间查询的条件可以支持普通查询的所有表达式,也就是说类似LIKE、GT和EXP这样的表达式都可以支持。另外区间查询还可以支持更多的条件,只要是针对一个字段的条件都可以写到一起,例如:
$map['name'] = array(array('like','%a%'), array('like','%b%'), array('like','%c%'), 'ThinkPHP','or');
最后的查询条件是:
( name LIKE '%a%') OR ( name LIKE '%b%') OR ( name LIKE '%c%') OR ( name = 'ThinkPHP')