Buscar
Social
Ofertas laborales ES

Foro sobre Java SE > LLenar ArrayList con sentencia sql Transform Pivot

Estimados, estoy comenzando a picar en java SE y necesito representar los datos de una tabla como un CrossTab, lo que se me ocurre es meter los datos en un arraylist para luego mostrarlos en un jtable , pero quería saber primero si es posible mandar este tipo de sentencia SQl a un arraylist, adjunto la sentencia:

TRANSFORM Sum(Tabla1.Amount) AS SumOfAmount
SELECT Tabla1.Departamento, Sum(Tabla1.Amount) AS [Total Of Amount]
FROM Tabla1
WHERE (((Tabla1.MesNum)<=2))
GROUP BY Tabla1.Departamento
PIVOT Tabla1.Mes;

Que me muestra mas o menos así:

Departamento JAN FEB Total Of Amount
Direct Supply Chain Costs 20.000 15.000 35.000
Facility & Services 65.000 18.000 83.000
Finance 35.000 45.000 80.000

Es el mejor camino?

Saludos y desde ya agradecido.

febrero 7, 2014 | Unregistered CommenterEspartano

Yo crearía una clase con propiedades declaradas para cada columna, y devolvería una List de esa clase.

public class Columnas {

private final String departamento;
private final BigDecimal enero;
private final BigDecimal febrero;
private final BigDecimal total;

public Columnas(String departamento, final BigDecimal enero, final BigDecimal febrero, final BigDecimal total) {
this.departamento = departamento;
this.enero = enero;
this.febrero = febrero;
this.total = total;
}

public String getDepartamento() {
return departamento;
}

public BigDecimal getEnero() {
return enero;
}

public BigDecimal getFebrero() {
return febrero;
}

public BigDecimal getTotal() {
return total;
}
}

Antes de obtener el ResultSet puedes crear una lista List<Columnas> = new ArrayList<>();
y llenarla con instancias de esa clase para cada fila obtenida.

febrero 7, 2014 | Registered Commenterchoces

Hola, muchísimas gracias , lo voy a provar y te comento.

Saludos.

febrero 7, 2014 | Registered Commenterespartano