ThinkPHP 3.2====》where 条件查询

发布时间:2024-12-19 16:04

公积金查询:软件可查询公积金缴存、提取等信息。 #生活技巧# #财务管理技巧# #个人财务软件#

最新推荐文章于 2024-10-05 21:55:51 发布

nzz_171214 于 2018-12-12 18:45:03 发布

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

thinkphp3.2 where 条件查询汇总

查询条件

支持的表达式查询,tp不区分大小写(字段名和内容都不区分大小写)

含义TP运算符SQL运算符例子实际查询条件等于eq=$where['id'] = array('eq','1')id = 1不等于neq!=$where['id'] = array('neq','1')id != 1大于gt(英文单词是greater than)>$where['id'] = array('gt','1')id >1大于等于egtEGT$where['id'] = array('egt','1')id>=1小于lt<$where['id'] = array('lt',1)id < 1小于等于elt<=$where['id'] = array('elt',1)id<=1匹配likelikewhere[′id′]=array(′like′,’begin%’)where id like ‘begin%’  $where[‘id’] = array('like','%begin%')where id like '%begin%'在范围内包括俩端值between0<=id<=10$where[‘id’] = array('between',array('0','10'))where id between 0 and 10不在范围内not between0 >id and 10 < id$where[‘id’] = array('not between',array('0','10'))where id not between 0 and 10在枚举的值中inin$where['id'] = array('in',array('1','2','5'))where id in ('1','2','3')不在枚举值中not innot in$where[‘id’] = array('not in',array(‘1','2','5'))where id not in ('1','2','5')字段值为nullexpis null$where['name']=array("exp","is null")where name is null

 复查的查询语句

有的时候,我们希望通过一次的查询就能解决问题,这个时候查询条件往往比较复杂,但是却比多次查询库来的高效。

最简单的办法是使用$where[‘_string’] = ‘xxxx’, 这个代表查询的时候拼接上 xxx 条件,一次性解决问题

$where['_string'] = 'left join A on A.id = b.id where a.id not in (select id from C)'; 

1,、区间查询,一个限制多种情况

默认是 and
$where['id'] =array(array('neq','8'),array('elt','200'),'and'); // 小于等于200 不等于 8

$where['id']  = array(array('neq','8'),'array('neq','10')','or'); // 不等于8或者不等于10

2、复合查询(相当于封装了新的查询条件在里面) 

$where['a'] = 5;
$where['b'] = 6;
$where['_logic'] = 'or'; 

sql:where a = 5 or b = 6;

$condition['c'] = '3';
$condition['d'] = '4'
$condition['_logic'] = 'or'
$where['a'] = 9;
$where['_complex'] = $condition;

sql: where a=9 and (c = 3 or d = 4)

3、sql 查询

如果有设置了读写分离的话 query 是查询 execute是更新保存

M()->query('select * from a');
M()->execute('update a set counts = 3 where id = 1103')

4、 获取要执行的sql 语句

1.fetchsql

语法$model -> where() -> limit() -> ...->order() -> fetchSql(true) ->CURD操作;

例子:M('user')->fetchsql(true)->select();

$result = $model -> group('name') -> field('name,count(*)') -> fetchSql(true) -> select();

2.buildsql

语法:$model->buildsql();

例子:M('user')->buildsql();

3.select(false)

M('user')->select(false);

4,getLastSql()

语法:M('数据表')->getLastSql();

网址:ThinkPHP 3.2====》where 条件查询 https://www.yuejiaxmz.com/news/view/519211

相关内容

sql语句where条件是变量
Thinkphp
where 1 = 0或者 1 =1 意义何在?
ThinKPHP 3.2.3 URL
MySQL 查询优化:提速查询效率的13大秘籍(避免使用SELECT *、分页查询的优化、合理使用连接、子查询的优化)(上)
MySQL慢查询优化
百万数据查询优化技巧三十则
MySQL索引原理及慢查询优化(转载)
Oracle查询优化改写技巧与案例2.0
sqlserver查询语句的优化技巧

随便看看