Veröffentlicht 13. Mai 200421 j Ich möchte mit einem SQL/92 Statement mit dem Datumswert 06.01.2004 auf die Tabelle Datum gehen und den Wert der diesem Datum oder dem nächst kleineren entspricht zurückbekommen. Tabelle Datum -------------- DatumAb Wert 01.01.2004 1 03.01.2004 3 05.01.2004 5 07.01.2004 7 09.01.2004 9 10.01.2004 10 Also mit 06.01.2004 -> 5 31.12.2004 -> 10 Mein Versuch war SELECT max(datumab) FROM Datum where max(datumab) <= '2004-01-06' Da bekomm ich die Fehlermeldung: "Ungültiger gebrauch einer Agregatsfunktion". Ideen ?
13. Mai 200421 j hallo, Ich möchte mit einem SQL/92 Statement mit dem Datumswert 06.01.2004 auf die Tabelle Datum gehen und den Wert der diesem Datum oder dem nächst kleineren entspricht zurückbekommen. Tabelle Datum -------------- DatumAb Wert 01.01.2004 1 03.01.2004 3 05.01.2004 5 07.01.2004 7 09.01.2004 9 10.01.2004 10 Also mit 06.01.2004 -> 5 31.12.2004 -> 10 Mein Versuch war SELECT max(datumab) FROM Datum where max(datumab) <= '2004-01-06' Da bekomm ich die Fehlermeldung: "Ungültiger gebrauch einer Agregatsfunktion". Ideen ? darfst du bei agregatsfunktionen where verwenden, oder brauchst du having? Versuch doch mal mit: SELECT max(datumab) FROM Datum where datumab <= '2004-01-06' oder: SELECT max(datumab) FROM Datum having datumab <= '2004-01-06' Ciao Antibiotik
13. Mai 200421 j Ich möchte mit einem SQL/92 Statement mit dem Datumswert 06.01.2004 auf die Tabelle Datum gehen und den Wert der diesem Datum oder dem nächst kleineren entspricht zurückbekommen. Tabelle Datum -------------- DatumAb Wert 01.01.2004 1 03.01.2004 3 05.01.2004 5 07.01.2004 7 09.01.2004 9 10.01.2004 10 Also mit 06.01.2004 -> 5 31.12.2004 -> 10 Mein Versuch war SELECT max(datumab) FROM Datum where max(datumab) <= '2004-01-06' Da bekomm ich die Fehlermeldung: "Ungültiger gebrauch einer Agregatsfunktion". Ideen ? ich hab zwar von Mysql nicht so die ahnung, aber ich denke es liegt daran, dass man bei "max()" kein Datum als Parameter angeben kann, ausser du gibst es als timestamp mit.
13. Mai 200421 j hallo, darfst du bei agregatsfunktionen where verwenden, oder brauchst du having? Versuch doch mal mit: SELECT max(datumab) FROM Datum where datumab <= '2004-01-06' Ciao Antibiotik guten morgen ... , Danke
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.