Hi,
ich habe eine Abfrage die mir die Summe aus 52 Spalten liefert:
ich möchte diese Anfrage so modifizieren dass ich jederzeit die Spalten kw1 - kw8 oder kw1 - kw34 also kumulierte Werte von kw1 bis kwX. den Wert X gebe ich als Parameter "int week" mit. ich habe hier noch wenig Erfahrung. wer kann mir helfen?
ich habe eine Abfrage die mir die Summe aus 52 Spalten liefert:
Java:
public int loadServices(int employe, int year, int week) {
PreparedStatement pst = null;
ResultSet rs = null;
int sumEmp = 0;
String query = "SELECT services_id, employe, year, (kw1 + kw2 + kw3 + kw4 + kw5 + kw6 + kw7 + kw8 + kw9 + kw10 + kw11 + kw12 + kw13 + kw14 + kw15 + kw16 + kw17 + kw18 + kw19 + kw20 + kw21 + kw22 + kw23 + kw24 + kw25 + kw26 + kw27 + kw28 + kw29 + kw30 + kw31 + kw32 + kw33 + kw34 + kw35 + kw36 + kw37 + kw38 + kw39 + kw40 + kw41 + kw42 + kw43 + kw44 + kw45 + kw46 + kw47 + kw48 + kw49 + kw50 + kw51 + kw52) AS sumEmp FROM services WHERE employe =? AND year =?";
// int i = 1;
try {
pst = con.prepareStatement(query);
pst.setInt(1, employe);
pst.setInt(2, year);
rs = pst.executeQuery();
while (rs.next()) {
sumEmp = rs.getInt("sumEmp");
}
} catch (SQLException e) {
e.printStackTrace();
} finally {
if (rs != null && pst != null) {
try {
rs.close();
pst.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
return sumEmp;
}