PHP-操作MySql

参考 ThinkPHP3.2.3完全开发手册: https://www.kancloud.cn/manual/thinkphp/1766

表达式列表

表达式不分大小写,支持的查询表达式有下面几种,分别表示的含义是:

表达式 含义 协助记忆
EQ 等于(=) equal
NEQ 不等于(<>) not equal
GT 大于(>) greater
EGT 大于等于(>=) equal or greater
LT 小于(<) less than
ELT 小于等于(<=) equal or less than
LIKE 模糊查询
[NOT] BETWEEN (不在)区间查询
[NOT] IN (不在)IN 查询
EXP 表达式查询,支持SQL语法 expression

条件区间查询示例

ThinkPHP支持对某个字段的区间查询,例如:

配合以上表达式查询:

1
$map['id'] = array(array('gt',1),array('lt',10)) ;

得到的查询条件是: ( id > 1) AND ( id < 10)

1
$map['id'] = array(array('gt',3),array('lt',10), 'or') ;

得到的查询条件是: ( id > 3) OR ( id < 10)

1
$map['id']  = array(array('neq',6),array('gt',3),'and');

得到的查询条件是:( id != 6) AND ( id > 3)

最后一个可以是AND、 OR或者 XOR运算符,如果不写,默认是AND运算。

区间查询的条件可以支持普通查询的所有表达式,也就是说类似LIKE、GT和EXP这样的表达式都可以支持。另外区间查询还可以支持更多的条件,只要是针对一个字段的条件都可以写到一起,例如:

1
$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')

本文标题:PHP-操作MySql

文章作者:郑上进

本文链接:http://blog.zjc123.cn/2019/05/21/PHP-OperateMySql/

许可协议:转载请保留原文链接及作者姓名。

-------------本文结束感谢您的阅读-------------