neo_82 Geschrieben 13. Mai 2004 Teilen Geschrieben 13. Mai 2004 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 ? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Antibiotik Geschrieben 13. Mai 2004 Teilen Geschrieben 13. Mai 2004 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 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
kills Geschrieben 13. Mai 2004 Teilen Geschrieben 13. Mai 2004 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. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
neo_82 Geschrieben 13. Mai 2004 Autor Teilen Geschrieben 13. Mai 2004 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 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.