bigpoint Geschrieben 21. Oktober 2003 Teilen Geschrieben 21. Oktober 2003 Hallo, warum geht es nicht ?? und wie kann man es richtig programmieren Bitte um Hilfe SQL select sum(t+k) as f from tabele where k>f Fehler Server: Nachr.-Nr. 207, Schweregrad 16, Status 3, Zeile 1 Ungültiger Spaltenname 'f'. PS Benutze SQL Server 2000 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Jaraz Geschrieben 21. Oktober 2003 Teilen Geschrieben 21. Oktober 2003 Moin, select sum(t+k) as f from tabele where k>sum(t+k) ungetestet! Gruß Jaraz Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Reinhold Geschrieben 21. Oktober 2003 Teilen Geschrieben 21. Oktober 2003 Original geschrieben von Jaraz select sum(t+k) as f from tabele where k>sum(t+k) bzw. select sum(t+k) as f from tabele where k<0; Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
bigpoint Geschrieben 21. Oktober 2003 Autor Teilen Geschrieben 21. Oktober 2003 Original geschrieben von Jaraz Moin, select sum(t+k) as f from tabele where k>sum(t+k) ungetestet! Gruß Jaraz leider Fehler Server: Nachr.-Nr. 147, Schweregrad 15, Status 1, Zeile 2 Ein Aggregat darf nicht in der WHERE-Klausel auftreten - es sei denn, es befindet sich in einer Unterabfrage, die in einer HAVING-Klausel oder einer Auswahlliste enthalten ist, und die Spalte, die aggregiert wird, ist ein Außenverweis. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
mme Geschrieben 22. Oktober 2003 Teilen Geschrieben 22. Oktober 2003 Du solltest mal versuchen die Bedingung in eine having-klausel zu setzen, da wie deine Fehlermeldung oben schon sagt Funktionen dieser Art in eine where-Bedingung nicht benutzt werden dürfen...... select sum(t+k) as f from tabele having k>sum(t+k) Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Goos Geschrieben 24. Oktober 2003 Teilen Geschrieben 24. Oktober 2003 Original geschrieben von Reinhold bzw. select sum(t+k) as f from tabele where k<0; Also wenn k groesser als die Summe t+k sein soll, dann sollte besser t<0 sein. Ich wuerde also select sum(t+k) as f from tabele where t<0 vorschlagen was aber irgendwie auch albern ist Wenn man doch die Aggregatfunktion sum benutzt, dann ists irgendwie unsinnig noch ein where einzusetzen. @007ski: Koenntest vielleicht nochmal erzaehlen, was du ueberhaupt machen wolltest? Goos Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
milkcat Geschrieben 1. November 2003 Teilen Geschrieben 1. November 2003 Also, so ganz kapiert hab ich auch nicht, was der 007ski haben möchte? Mußte uns vielleicht noch etwas genauer erklären, um was es eigentlich geht, aber ich hab die Sache mal in zwei Abfragen erstellt: Abfrage1: SELECT Sum([Tabelle].[t]+[Tabelle].[k]) AS F FROM Tabelle GROUP BY Tabelle.t, Tabelle.k; Abfrage2: SELECT Abfrage1.F, Tabelle.k FROM Abfrage1, Tabelle WHERE (((Tabelle.k)>[Abfrage1].[F])); Anders, kann man das leider nicht lösen oder bzw. wüßte jetzt keinen anderen Lösungsweg. Ich hoffe, ich habe deine Frage verstanden und konnte Dir helfen. 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.