Listar soma de valores

[quote]Galera, beleza?
To com um problema que tá travando minha mente, preciso listar todas colunas de uma tabela “investimento” e, ainda, somar os valores quando o dia se repetir, apenas o dia repetido, ignorando mes e ano. um select diaIni, sum(vlrInicio) from investimento group by diaIni não funciona porque preciso trazer todas colunas. abaixo a JSP, o metodo e o sql ta tabela criada para que alguem me ajude.[/quote]

<%@page import="codigos.Investimento"%>
<%@page import="java.util.ArrayList"%>
<%@page contentType="text/html" pageEncoding="UTF-8"%>

<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>JSP Page verInv</title>
    </head>
    <body>
    <% 
        Investimento investim = new Investimento();
            String ordemIn;  //para links ordenação funcionar
            
            try{    //para links ordenação funcionar
                ordemIn= request.getParameter("ordemIn");    //para links ordenação funcionar
                ordemIn.isEmpty();
                }catch(Exception e){    //para links ordenação funcionar
                    ordemIn= "idi";
                    }        
        ArrayList<Investimento> inves= investim.consultarin(ordemIn);
    %>
        <br></br>
        
        <h2>Todos Investimentos</h2>
        </br>
        <table bgcolor="green" border="1">
            <tr>   <!-- transformando em links-->
                <th><font color="white">Item</font></th>
                <th><a href="verInv.jsp?ordemIn=diaIni"><font color="white">Dia Inicio</font></th>
                <th><a href="verInv.jsp?ordemIn=mesIni"><font color="white">Mes Inicio</font></th>
                <th><a href="verInv.jsp?ordemIn=anoIni"><font color="white">Ano Inicio</font></th>
                <th><a href="verInv.jsp?ordemIn=vlrInicio"><font color="white">R$ Inicio</font></th>
            </tr>  
        <%
            int itemi= 0;
            for (int i=0; i < inves.size(); i++){
        %>
        <td><font color="yellowgreen"><b><% out.print(itemi= itemi +1); %></b></font></td>
        <td><% out.print(inves.get(i).getDiaIni());%></td>
        <td><% out.print(inves.get(i).getMesIni());%></td>
        <td><% out.print(inves.get(i).getAnoIni());%></td>
        <td><% out.print(inves.get(i).getVlrInicio());%></td>
    </tr>
public ArrayList<Investimento> consultarin(String ordem){
        ArrayList<Investimento> listaInvestim = new ArrayList<Investimento>();
            try {
            conexao.conectar();
            PreparedStatement statement;
            String sqlc= "select * from investimento order by ("+ ordem+");";
            statement= conexao.con.prepareStatement(sqlc);
            ResultSet rs= statement.executeQuery();
            while(rs.next()){
                Investimento inve= new Investimento();
                inve.setDiaIni(rs.getInt("diaIni"));
                inve.setMesIni(rs.getInt("mesIni"));
                inve.setAnoIni(rs.getInt("anoIni"));
                inve.setVlrInicio(rs.getFloat("vlrInicio"));
                inve.setVlrAtual(rs.getFloat("vlrAtual"));
                inve.setDtAtual(rs.getString("dtAtual"));
                inve.setImg(rs.getString("imagem"));
                inve.setIdi(rs.getInt("idi"));
                listaInvestim.add(inve);
            }
  
            conexao.desconectar();

        } catch (Exception e) {
            e.printStackTrace();
        }
        return listaInvestim;
    }
create table investimento(
idi serial primary key,
diaIni integer,
mesIni integer,
anoIni integer,
vlrInicio numeric(9,2),
vlrAtual numeric(9,2),
dtAtual varchar(10),
imagem varchar(100)
);

A única forma que vejo é tratar isso no java mesmo.
Recebe, verifica se o dia é o mesmo e, sendo, incrementa uma variável.

[quote=drsmachado]A única forma que vejo é tratar isso no java mesmo.
Recebe, verifica se o dia é o mesmo e, sendo, incrementa uma variável.[/quote]

Sim, sim, mas como?

for, while, do/while…