查询中相同结构的表
比如销售纪录的表
一天生成一个或者别的方式生成,结构相同,我们可以把他作为一个表做一个mapping和一个bean
比如销售信息SellInfo
在dao中用native sql统计查询(普通的查询我就不说了)
[code] /**
* 单店统计查询
* @param tableName 查询表名
* @param sellInfo 查询例子
* @param startTime 开始时间
* @param finishTime 结束时间
* @param sumBy 按什么求和
* @param groupBy 按什么分组
* @return 数量 项目
*/
public List queOneShopGrp(String tableName,SellInfo sellInfo,Date startTime,Date finishTime,String sumBy,String groupBy)
{
Session session = this.getSession();
StringBuffer sql = new StringBuffer();
sql.append("select sum(S.");
sql.append(sumBy);
sql.append(") as sumMoney,S.");
sql.append(groupBy);
sql.append(" as foodName from ");
sql.append(tableName);
sql.append(" S where");
if(sellInfo!=null)
{
sql.append(this.getExampleStringS(sellInfo));
}
sql.append(" S.sellTime between :startTime and :finishTime ");
sql.append("group by S.");
sql.append(groupBy);
System.out.println(sql.toString());
Query query = session.createSQLQuery(sql.toString())
.addScalar("sumMoney", Hibernate.DOUBLE)
.addScalar("foodName", Hibernate.STRING)
.setDate("startTime", startTime)
.setDate("finishTime", finishTime);
return query.list();
}[/code]
比如销售纪录的表
一天生成一个或者别的方式生成,结构相同,我们可以把他作为一个表做一个mapping和一个bean
比如销售信息SellInfo
在dao中用native sql统计查询(普通的查询我就不说了)
[code] /**
* 单店统计查询
* @param tableName 查询表名
* @param sellInfo 查询例子
* @param startTime 开始时间
* @param finishTime 结束时间
* @param sumBy 按什么求和
* @param groupBy 按什么分组
* @return 数量 项目
*/
public List queOneShopGrp(String tableName,SellInfo sellInfo,Date startTime,Date finishTime,String sumBy,String groupBy)
{
Session session = this.getSession();
StringBuffer sql = new StringBuffer();
sql.append("select sum(S.");
sql.append(sumBy);
sql.append(") as sumMoney,S.");
sql.append(groupBy);
sql.append(" as foodName from ");
sql.append(tableName);
sql.append(" S where");
if(sellInfo!=null)
{
sql.append(this.getExampleStringS(sellInfo));
}
sql.append(" S.sellTime between :startTime and :finishTime ");
sql.append("group by S.");
sql.append(groupBy);
System.out.println(sql.toString());
Query query = session.createSQLQuery(sql.toString())
.addScalar("sumMoney", Hibernate.DOUBLE)
.addScalar("foodName", Hibernate.STRING)
.setDate("startTime", startTime)
.setDate("finishTime", finishTime);
return query.list();
}[/code]