2013-05-01 126 views
0

我有以下类型列SQL为什么这个SQL返回那样?

SELECT SUM(amount) from CustomerPayment where date like '%2013' GROUP BY TYPE 

有两个选择,一个是他们银行,另一种是现金

我想seperately总结这些。例如:银行总计500,现金是400

但是,上面的sql不记录总和。相反,它会返回银行和现金记录的首个记录。为什么?

+1

,请复制粘贴您的表中的数据在这里 – Jalpesh 2013-05-01 09:28:53

+0

没有错,你的查询,除了'like' - 使用'年(日期)== 2013'。它适用于我:http://sqlfiddle.com/#!2/7c1c90/3 – Mar0ux 2013-05-01 09:39:51

回答

-1

包括TYPE山坳也

SELECT TYPE, SUM(amount) from CustomerPayment where date like '%2013' GROUP BY TYPE 
+0

在org.hibernate.hql.classic.PathExpressionParser.token给出此错误(PathExpressionParser.java:130) \t at org.hibernate .hql.classic.ParserHelper.parse(ParserHelper.java:28) \t在org.hibernate.hql.classic.SelectParser.token(SelectParser.java:176) \t在org.hibernate.hql.classic.ClauseParser.token (ClauseParser.java:86) – user2326472 2013-05-01 09:37:04

+0

向SELECT组件添加字段在处理GROUP BY或WHERE条件时不会产生影响 – Tomas 2013-05-01 09:47:08

0

我要说的尝试,并添加类型的SQL查询。然后它有一个你想分组的类型的可见表示。

SELECT SUM(amount), TYPE from CustomerPayment where date like '%2013' GROUP BY TYPE 
+0

在org.hibernate.hql.classic.PathExpressionParser.token(PathExpressionParser.java :1 30)at org.hibernate.hql.classic.ParserHelper.parse(ParserHelper.java:28)at org.hibernate.hql.classic.SelectParser.token(SelectParser.java:1 76)在org.hibernate.hql.classic.ClauseParser.token(ClauseParser.java:86) – user2326472 2013-05-01 09:38:33

+0

我找不到错误可能在sql语句中。可能与您尝试输入的数据有关?如果是这种情况,那可能可以解释为什么使用当前给定的信息,我们无法看到问题。 – Skillcoil 2013-05-01 09:45:08

+0

我使用休眠可能它与休眠不同。 – user2326472 2013-05-01 09:58:31

0

可以尝试使用一年(日期)= 2013,如果数据不存在,所以我猜测,如果“喜欢”功能是不是让一群被正确地执行其功能。

+0

你应该首先粘贴数据 – 2013-05-01 10:08:55