您现在的位置是:首页 > PHP技术PHP技术

Thinkphp时间段查询sql构建问题

2018-04-12【PHP技术】1447 人已围观

简介 一个项目内需要用到时间范围查询,例如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:

很赞哦! ()

文章评论

点击排行

本站推荐

站点信息