我想获得日期相同的列的总和。
日期费用
3/8/2012 200
3/8/2012 400
4/8/2012 300
4/8/2012 100
<%stat=con.createStatement();
rs=stat.executeQuery("select * from pat.dbo.PHPL");
while(rs.next())
{
date=rs.getString("Date");
charges=rs.getString("Charges");%>
<table>
<tr>
<td><%=date%></td>
<td><%=charges%></td>
<%}%>
</tr></table>
想要这个结果:
日期费用
3/8/2012 600
4/8/2012 400
我想用jsp而不是sql查询。因为我在数据库中将数据类型设置为String。因此查询中无法求和。 感谢。
答案 0 :(得分:0)
您没有提供有关正在使用的dbms的任何信息,但是,根据您的原始查询,我假设您使用的是Microsoft的sqlserver。
所以,你可以写:
从pat.dbo.PHPL组中按日期选择日期,总和(演员(收费为浮动))。 看到这个链接:
http://msdn.microsoft.com/en-us/library/aa226054%28v=sql.80%29
答案 1 :(得分:0)
我更喜欢JoséEsteves-Pereira的转换解决方案,但你可以尝试这个代码:
<%stat=con.createStatement();
rs=stat.executeQuery("select * from pat.dbo.PHPL");
actDate
while(rs.next())
{
date = rs.getString("Date");
if (actDate != date)
{
actDate = date;
charges = rs.getString("Charges");
}
else
{
charges += rs.getString("Charges");
}
%>
<table>
<tr>
<td><%=actDate %></td>
<td><%=charges%></td>
<%}%>
</tr>
</table>