• 当需要查询时间差来获取数据时


    首先list页面

    <td>数据库入库时间 : <input name="startime" type="text" style=" 157px" readonly="readonly" id="startime" maxlength="50" value="${startime}"onclick="WdatePicker({dateFmt:'yyyy-MM-dd'});"style=" 180px;" /><input name="endtime" type="text"readonly="readonly" style=" 157px" id="endtime" maxlength="50"value="${endtime}" onclick="WdatePicker({dateFmt:'yyyy-MM-dd'});"style="180px;" /></td>

    这段话里的WdatePicker是一个日历插件

    controller里边 接收一下

     String startime = request.getParameter("startime");
     String endtime = request.getParameter("endtime");

    再进行sql更改

    下面的三个方法都可以查本天。

    一.先介绍一个很普通的方法

    if(startime != null && !"".equals(startime) && endtime != null && !"".equals(endtime)){
    hql +=" and u.refresh_time >=to_date('" + startime + " 00:00:00'" + " ,'yyyy-mm-dd hh24:mi:ss') and u.refresh_time <=to_date('" + endtime + " 23:59:59'" + ",'yyyy-mm-dd hh24:mi:ss')";
    }


    二 .如果 要查询的是 组合时间 那么就用下边这个,但是
    if (startime != null && !"".equals(startime) && endtime != null && !"".equals(endtime)) { 2 sql += " and u.refresh_time between to_date('" + startime + " 00:00:00'" + " ,'yyyy-mm-dd hh24:mi:ss') and to_date('" + endtime + " 23:59:59'" + ",'yyyy-mm-dd hh24:mi:ss')"; 3 }

    三.如果想灵活多用那么就用 下面这个方法

    if(StringUtils.isNotBlank(start)&&StringUtils.isBlank(end)){
    hql +=" and g.clrq>=to_date("+"'"+start+"'"+",'yyyy-mm-dd')";
    }else if(StringUtils.isNotBlank(end)&&StringUtils.isBlank(start)){
    hql +=" and g.clrq<=to_date("+"'"+end+"'"+",'yyyy-mm-dd')";

    }else if(StringUtils.isNotBlank(start)&&StringUtils.isNotBlank(end)){
    hql +=" and g.clrq>=to_date("+"'"+start+"'"+",'yyyy-mm-dd') and g.clrq<=to_date("+"'"+end+"'"+",'yyyy-mm-dd')";
    }

  • 相关阅读:
    python 之路之函数01
    python之路07文件处理
    python 之路06day
    python之路05
    【漏洞预警】方程式又一波大规模 0day 攻击泄漏,微软这次要血崩
    PHP渗透中的奇淫技巧--检查相等时的漏洞
    中国气象局某分院官网漏洞打包(弱口令+SQL注入+padding oracle)
    【原创】实战padding oracle漏洞
    破解神器Hashcat使用简介
    关于void main()的误区
  • 原文地址:https://www.cnblogs.com/ZFnice/p/5706356.html
Copyright © 2020-2023  润新知