[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)
);