您现在的位置是:首页 > PHP技术PHP技术
Thinkphp时间段查询sql构建问题
2018-04-12【PHP技术】2739 人已围观
简介 一个项目内需要用到时间范围查询,例如t1=2018-01-01 到 t2=2018-02-02.小编希望得到的sql语句是sql = ...
一个项目内需要用到时间范围查询,例如t1=2018-01-01 到 t2=2018-02-02.小编希望得到的sql语句是
sql = "........where t=> t1 and t<=t2" .
这里允许t1或者t2为空,或者二个都为空. 允许只输入一个时间或者二个或者一个时间也没有输入
原生的sql构建通过if判断就可以实现
if(t1<>''){
$whr .= " and t>=t1";
}
if(t2<>''){
$whr .=" and t<=t2";
}
在thinkphp内也使用这样的if判断会发现当二个都输入时第二个$whr['t'] = array('elt',t2)会复盖第一个条件...
看来只能再多写一次把当t1 t2都不为空的条件写一个独立的判断.
关注宁波网站建设博客,更多精彩分享,敬请期待!
Tags:
很赞哦! ()
相关文章
随机图文
Thinkphp3.1.3中更新指定字段方法
Thinkphp3.1.3版本当中更新操作一般如下$dao = D("table");$dao->create...
php常用比较及赋值运算符号
有时脑子转不过弯来,一些常用的符号想不起来是怎么写的,比如不等于号 != !==这二个其实都可以使用。下面罗列一下常用 的 $a == $...
PHP学习笔记:PHP遍历数组的几种方法
PHP中遍历数组有三种常用的方法: 一、使用for语句循环遍历数组; 二、使用foreach语句遍历数组; 三、联合使用list()、...
sql中查询同一列所有值出现的次数
需要查询country中各个国家出现的次数SQL语句:SELECT country as 国家,COUNT(*) as 次数 FROM ta...




微信收款码
支付宝收款码