hql语句问题!
在做一个小程序,涉及到用hql语句算出结果。
在DAO层写一个方法,传了个(Type,Calendar)前一个参数是代表日,月,季,年的常量参数,后一个参数是一个日历。
小弟现在想用hql语句算出在当天,或者本月,数据库中一列的常量的和。
例如,表名:Location 列名:price 日期:date
现在小弟想查询出location中日期为当天的price的和。
请帮帮忙。
------解决方案--------------------select sum(price) from location where date = getdate()
何不用sql语句直接去写,session.createSQLQuery();
------解决方案--------------------日:
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')
毫秒寫不來~