让表格包含字段id,amount,createdDate,其中createdDate在timeStamp中
**1.**em.createNamedQuery("select Sum(t.amount) from tablename t
WHERE cast(t.createdDate as date) = :createdDate")**
让createdDate成为'2012-3-23' 现在结果将是从00:00:00到23:59:59的特定日期('2012-3-23')的所有金额的总和。
另一种方式是
**2.em.createNamedQuery("select Sum(t.amount) from tablename t
WHERE t.createdDate between :fromDate and :todate")**
fromDate的值是'2012-3-23 0:0:0'并且表示为'2012-3-23 23:59:59'
现在结果将是从00:00:00到23:59:59的特定日期('2012-3-23')的所有金额的总和。
以上两个查询成功。
有没有其他方法可以在不使用的情况下获得结果 1.cast在查询中 2.如上所述,使用指定的时间值给出日期和时间。
答案 0 :(得分:0)
使用DATE
功能。
SELECT SUM(t.amount) FROM tablename t WHERE DATE(createdDate) = :createdDate
答案 1 :(得分:0)
使用DATE()函数:
select DATE(createdDate), SUM(t.amount) from tableName t
where DATE(createdDate) =:createdDate