Hibernate hql语句按时间段查询

第一种:

StringBuffer jpql = new StringBuffer();
			jpql.append("select new Company(c.id,c.name,c.businessLicence,c.legalPerson,c.categorys,c.businessUserId,c.addedTime,c.status,r.name)");
			jpql.append(" from Company c,Region r where c.regionId=r.id ");
		    String sql=SqlGenerateTool.generateWhere(company, "c");
		    jpql.append(sql);
		    if(company.getQueryParameters().getEndTime()!=null && !company.getQueryParameters().getEndTime().equals("")){
		    	SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
				String parmtime=null;
				try {
					parmtime=(sdf.format(new Date(sdf.parse(company.getQueryParameters().getEndTime()).getTime()+ (24 * 60 * 60 * 1000))));
				} catch (ParseException e) {
				}
				jpql.append(" and c.addedTime < str_to_date('").append(parmtime).append("','%Y-%m-%d')");
		    }


第二种:

StringBuffer jpql=new StringBuffer();
		jpql.append("select new ByBusinessesWanted(bw.id,bw.buyCode,bw.itemName,bw.intentionPrice,bw.createTime,bw.effectiveTime,bw.status)");
		jpql.append(" from ByBusinessesWanted bw");
		jpql.append(" where 1=1");
		jpql.append(" and bw.userId="+byBusinessesWanted.getUserId());
		if(byBusinessesWanted!=null){
			if(byBusinessesWanted.getBuyCode()!=null && !byBusinessesWanted.getBuyCode().equals("")){
				jpql.append(" and bw.buyCode='"+byBusinessesWanted.getBuyCode()+"'");
			}
			if(byBusinessesWanted.getStatus()!=null && !byBusinessesWanted.getStatus().equals("")){
				jpql.append(" and bw.status="+byBusinessesWanted.getStatus());
			}
			if(byBusinessesWanted.getItemName()!=null && !byBusinessesWanted.getItemName().equals("")){
				jpql.append(" and bw.itemName like '%").append(byBusinessesWanted.getItemName()).append("%'");
			}
			if(byBusinessesWanted.getQueryParameters()!=null){
				if(byBusinessesWanted.getQueryParameters().getStartTime()!=null&&!"".equals(byBusinessesWanted.getQueryParameters().getStartTime())){
					jpql.append(" and bw.createTime >=");
					jpql.append(" DATE_FORMAT('"+byBusinessesWanted.getQueryParameters().getStartTime()+" 00:00:00','%Y-%m-%d %H:%i:%s')");
				}
				if(byBusinessesWanted.getQueryParameters().getEndTime()!=null&&!"".equals(byBusinessesWanted.getQueryParameters().getEndTime())){
					jpql.append(" and bw.createTime <=");
					jpql.append(" DATE_FORMAT('"+byBusinessesWanted.getQueryParameters().getEndTime()+" 23:59:59','%Y-%m-%d %H:%i:%s')");
				}
			}
		}
		jpql.append(" order by bw.createTime desc");





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值