Vielleicht habe ich das nicht kapiert aber die Frage war: Ich brauche eine Liste von Kursen, jeweils nach Ihrem Anfangs- Termin geordnet.
Mein Vorschlag um halb eins: SELECT Titel1, startdatum, enddatum FROM Kurse, termine WHERE Kurse.KursID = termine.kursid ORDER by termine.startdatum Tada und schon hasste alle. Gr�sse Charles Bischof // // Hallo! // // > SELECT Kurse.KursID, Kurse.Titel1, // MIN(Termine.StartDatum) FROM Kurse // > INNER JOIN Termine ON Kurse.KursID = Termine.KursID GROUP BY // > Kurse.KursID // > // > Und achja... Redundanz... Vermeide sie... :-) // // ... und das sortiert jetzt die Kurse nach dem fr�hesten // Veranstaltungstermin? Kann ich gar nicht nachvollziehen. // Das m�sste sogar wieder einen Syntax-Fehler geben, da // Titel1 keine Aggregatfunktion hat und nicht in der // GROUP-BY-Klausel auftaucht. So liefert MIN auch das Minimum // aller Termine, also in jedem JOIN den gleichen Wert // unabh�ngig von der KursID // // Aus meiner Sicht kommt man hier um ein Sub-Select nicht herum. Also: // // View1: // SELECT KursID, Titel1, // (SELECT MIN(StartDatum) // FROM Termine // WHERE Termine.KursID = Kurse.KursID // ) AS Kursbeginn // FROM Kurse // // ... und dann: // // SELECT TOP 100 PERCENT View1.Titel1, // Termine.StartDatum, Termine.EndDatum // FROM View1 INNER JOIN Termine ON Termine.KursID = View1.KursID // ORDER BY View1.Kursbeginn, Termine.StartDatum // // Keine Redundanz (wegen "View1"), keine Gruppierung (war // nicht verlangt, bringt auch nichts), sehr performant // (MIN-Funktion nur �ber einen kleinen Teil der Tabelle dank // WHERE), ..., oder? // // "TOP 100 PERCENT" ist erforderlich, damit der SQL-Server // nach "View1.Kursbeginn" sortieren kann; ansonsten w�rde die // View nicht sortiert. In "View1" ist eine ORDER-BY-Klausel // �berfl�ssig, da "View2" - die eigentliche Abfrage ja noch // zus�tzlich nach Startdatum sortiert werden soll. "View1" // ist erforderlich, wenn man performant sortieren will, // ansonsten k�nnte man das Sub-Select ja auch in der FROM- // und in der ORDER-BY-Klausel definieren. // // Freundliche Gr��e // Joachim van de Bruck // // // ~~~~~~~~~~~~~~~~~~~~~~~~~~~sponsored by United // Planet~~~~~~~~~~~~~~~~~ Intrexx.BizWalker + // ODBC/OLEDB-Daten = ASP-Formular // ATTACK! Download Intrexx CRM-Studio Now! http://www.intrexx.com // _______________________________________________ // Database.asp mailing list // [EMAIL PROTECTED] // // http://www.glengamoi.com/mailman/listinfo/database.asp // // ~~~~~~~~~~~~~~~~~~~~~~~~~~~sponsored by United Planet~~~~~~~~~~~~~~~~~ Intrexx.BizWalker + ODBC/OLEDB-Daten = ASP-Formular ATTACK! Download Intrexx CRM-Studio Now! http://www.intrexx.com _______________________________________________ Database.asp mailing list [EMAIL PROTECTED] http://www.glengamoi.com/mailman/listinfo/database.asp
