Map<String, Object> params = new HashMap<String, Object>();
params.put("startDate", startDate);
params.put("endDate", endDate);
StringBuilder sql = new StringBuilder();
sql.append("SELECT s.id as {ss.id}, ");
sql.append("s.report_date as {ss.reportDate},");
sql.append("SUM(s.new_today_count) as {ss.newTodayCount},");
sql.append("SUM(s.new_last_seven_days_count) as {ss.newLastSevenDaysCount},");
sql.append("SUM(s.new_last_thirty_days_count) as {ss.newLastThirtyDaysCount},");
sql.append("SUM(s.total_count) as {ss.totalCount}, ");
sql.append("s.created_date as {ss.createdDate} ");
sql.append("FROM stat_hq_store_daily s ");
sql.append("where s.report_date BETWEEN :startDate AND :endDate ");
if (provinceId > 0) {
sql.append("AND province_id = :provinceId ");
params.put("provinceId", provinceId);
}
if (cityId > 0) {
sql.append("AND city_id = :cityId ");
params.put("cityId", cityId);
}
if (districtId > 0) {
sql.append("AND district_id = :districtId ");
params.put("districtId", districtId);
}
sql.append("GROUP BY s.report_date");
Map<String, Class> classes = new HashMap<String, Class>();
classes.put("ss", StatHqStoreDaily.class);
return (List<StatHqStoreDaily>)sqlQuery(sql.toString(), params, classes);
OR
相关推荐
在提供的压缩包文件"NativeSQLTest"中,可能包含了作者对使用Hibernate进行Native SQL查询的一些实践案例或者测试代码。这将是一个很好的学习资源,可以深入理解如何在实际项目中应用Native SQL查询,解决复杂查询...
Hibernate 提供了多种方式来执行原生 SQL 语句,其中之一是使用 `Session.createSQLQuery()` 方法,该方法返回一个 `SQLQuery` 对象,该对象提供了执行原生 SQL 语句的方法。 例如,我们可以使用以下代码来执行一个...
为了实现动态SQL,我们可以借助于Hibernate的QBC(Query By Criteria)和Criteria API,或者使用第三方库如MyBatis的动态SQL功能。本文主要讨论使用XML配置和FREEMARKER的方法。 四、XML配置SQL 在Hibernate中,...
首先,本地SQL查询(Native SQL)是指直接在Hibernate中使用原生的SQL语句进行查询,而不是使用HQL(Hibernate Query Language)。这允许开发者充分利用SQL的功能,比如进行复杂的统计计算或者处理特定数据库的特性...
在Java的持久化框架Hibernate中,执行原生SQL(Native SQL)是常见需求,尤其是在处理特定数据库特性或者优化性能时。本篇文章将详细介绍在Hibernate中执行原生SQL的几种方式,以及它们各自的适用场景和优缺点。 1....
在查询时,如果实体在映射时有一个 many-to-one 的关联指向另外一个实体,必须也返回那个实体,否则会导致发生一个"column not found"的数据库错误。这些附加的字段可以使用*标注来自动返回,但我们希望还是明确指明...
在Java的持久化框架Hibernate中,除了使用HQL(Hibernate Query Language)进行数据查询外,还可以使用Native SQL来访问数据库。本篇文章将深入探讨在Hibernate3中如何通过Native SQL查询部分字段,并将其映射到具体...
Struts 1.1、Hibernate 3.0 和 SQL Server 2005 数据库驱动包是构建基于Java的企业级Web应用程序的关键组件。这些技术在2000年代中期广泛应用于开发面向服务架构(SOA)和模型视图控制器(MVC)模式的系统。 Struts...
在开发过程中,为了调试和优化SQL查询,有时我们需要查看Hibernate生成的完整SQL语句,包括其参数值。通常,Hibernate默认输出的SQL语句会用问号(?)作为占位符,这在理解查询逻辑时可能会带来不便。本文将详细介绍...
在Java开发中,Hibernate是一个非常流行的持久化框架,它简化了与数据库的交互,使得开发者可以更专注于业务逻辑而不是底层的SQL操作。本文将详细讲解如何使用Hibernate来编写通用的数据库操作代码,包括插入...
使用本地sql语句查询后,无需再使用Object对查询结果进行强制转换,而是直接将查询结果放到实体Bean里了。 PS: 其实只有一版,这里只所以叫最终版是因为该附件我上传了好几天传不上去,到最后报告说‘资源已经存在...
在这个场景中,我们将探讨如何使用Hibernate与SQL Server 2005数据库进行基本的CRUD(Create、Read、Update、Delete)操作。 首先,我们需要确保引入了Hibernate的依赖库。从描述中的“Hibernate 所需要的 jar 包”...
总结来说,模仿Hibernate生成SQL语句需要对Hibernate的ORM机制有深入理解,包括实体类的定义、属性映射、查询API的使用,以及Java反射的应用。通过这种方式,开发者可以自定义查询逻辑,同时利用Hibernate的强大功能...
标题 "tomcat 启动报APR based Apache Tomcat Native library not found" 指出的问题是关于Apache Tomcat服务器在启动时找不到基于APR(Apache Portable Runtime)的本机库。这通常涉及到Tomcat使用APR库来提高性能...
### Hibernate中使用SQL而非HQL语句的知识点详解 在Java开发中,Hibernate作为一个非常流行的ORM框架,提供了多种查询方式,其中就包括了HQL(Hibernate Query Language)和原生SQL查询。本文将针对给定代码片段中...
**使用Hibernate访问SQL Server数据库** Hibernate是一个开源的对象关系映射(ORM)框架,它为Java开发者提供了一种在关系数据库和面向对象编程之间架起桥梁的方式。通过使用Hibernate,我们可以避免编写大量的SQL...
本例将详细介绍如何使用Hibernate 3连接到SQL Server数据库。 首先,我们需要了解Hibernate 3的基本配置。在项目中,创建一个名为`hibernate.cfg.xml`的配置文件,用于定义数据库连接参数。例如: ```xml ...
在某些情况下,开发者可能需要使用原生SQL查询来执行特定的数据库操作,这时就可以利用Hibernate的SQLQuery功能。本文将详细讲解如何使用Hibernate的SQLQuery进行本地SQL查询。 首先,创建SQLQuery实例是通过...
SQLServer2008Dialect 优化了原来的分页查询数据方法以及在生成SQL时表后增加了with(nolock)