在做一个小程序,涉及到用hql语句算出结果。
在DAO层写一个方法,传了个(Type,Calendar)前一个参数是代表日,月,季,年的常量参数,后一个参数是一个日历。
小弟现在想用hql语句算出在当天,或者本月,数据库中一列的常量的和。
例如,表名:Location 列名:price 日期:date
现在小弟想查询出location中日期为当天的price的和。
请帮帮忙。

解决方案 »

  1.   

    select sum(price) from location where date = getdate()何不用sql语句直接去写,session.createSQLQuery();
      

  2.   

    要不你试一试用count(*) 方法试试看。
      

  3.   

    select sum(price) from location where date = getdate() 这个语句应该可以
      

  4.   

    日:
    SELECT SUM(L.PRICE) FROM  Location L WHERE TO_CHAR(L.DATE,'dd')=TO_CHAR(SYSDATE,'dd')月:
    SELECT SUM(L.PRICE) FROM  Location L WHERE TO_CHAR(L.DATE,'MM')=TO_CHAR(SYSDATE,'MM')年
    SELECT SUM(L.PRICE) FROM  Location L WHERE TO_CHAR(L.DATE,'yy')=TO_CHAR(SYSDATE,'yy')小時
    SELECT SUM(L.PRICE) FROM  Location L WHERE TO_CHAR(L.DATE,'hh')=TO_CHAR(SYSDATE,'hh')分鐘
    SELECT SUM(L.PRICE) FROM  Location L WHERE TO_CHAR(L.DATE,'mm')=TO_CHAR(SYSDATE,'mm')秒
    SELECT SUM(L.PRICE) FROM  Location L WHERE TO_CHAR(L.DATE,'ss')=TO_CHAR(SYSDATE,'ss')毫秒寫不來~
      

  5.   

    好像HQL里不能有select count(*)的吧