# SQL mit Group by



## selim (16. Jan 2012)

Hallo zusammen,

ich versuche hier diese SQL laufen zu lassen aber bekomme bei der Ausgabe einen Fehler: Column not found

Es wird bestimmt an meiner MAX(DATUM) liegen, jetzt meine Frage wie kann ich diese Feld ausgeben?


[sql]
select H3SIT, H3DEP, H3NCOM, H3FETA, H3FETA2, Max(H3XFETA), H3TIM 
FROM TH3HOR01P  
WHERE H3SIT='HH' AND H3DEP='MOTEC' AND H3FETA2= '6' 
GROUP BY H3SIT, H3DEP, H3ncom, H3FETA, H3FETA2, H3TIM
[/sql]



```
String sqlQuery = "select H3SIT, H3DEP, H3NCOM, H3FETA, H3FETA2, Max(H3XFETA), H3TIM FROM TH3HOR01P  WHERE H3SIT='HH' AND H3DEP='MOTEC' AND H3FETA2= '6' GROUP BY H3SIT, H3DEP, H3ncom, H3FETA, H3FETA2, H3TIM";

ResultSet rSet = stmt.executeQuery(sqlQuery);
	while (rSet.next())

list.add(rSet.getString("H3SIT")+"|"+rSet.getString("H3DEP")+"|"+rSet.getString("H3NCOM")+"|"+rSet.getString("H3XFETA")+"|"+rSet.getString("H3TIM")+"|");
```

Danke euch schon mal.


----------



## Evil-Devil (16. Jan 2012)

Gibt dir dein DBMS keine genauere Fehlermeldung aus? Column not found ist für uns Außenstehende die nicht wissen wie deine Tabelle aufgebaut ist sehr schwierig zu lösen 

[tipp]Deinen SQL Code kannst du übrigens in SQL Tags packen, dann wird der schön formatiert.[/tipp]


----------



## SlaterB (16. Jan 2012)

mehr steht nicht in der Fehlermeldung?
deine Vermutungen kannst du vielleicht in Wissen umwandeln, wenn du in deiner Query 
all die kryptischen Column-Angaben einzeln wegläßt,
oder bei zu vermutenden mehreren Fehlern lieber andersum anfängst:


```
select * from TH3HOR01P
```
ist die erste Query die funktionieren sollte, sonst eh Ärger,
danach Schritt für Schritt einzelne Attribute abfragen, danach vielleicht das WHERE einfügen, jede Bedingung Schritt für Schritt,
danach die Gruppierung Schritt für Schritt, alles zu schaffen 

du könntest auch die Tabellendefinition oder sonstige Hinweise posten,
falls andere überprüfen sollen ob du einen Tippfehler bei den Column-Namen hast 

edit: 
ok, die Query läuft, der Fehler kommt sicher erst beim Durchlauf des ResultSets?,
schau in den Metadaten welchen Spaltennamen das Max bekommt, oder verwende SQL-Bennennung a la
[c]Max(H3XFETA) as xy [/c]


----------



## selim (16. Jan 2012)

Evil-Devil Danke das wusste ich nicht mit SQL-TAGS!

SlaterB dir 1000 x Danke mit 
	
	
	
	





```
Max(H3XFETA) as xy
```
 hat es funktioniert!!!


----------

