> > 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

Stimmt... Titel1 muss noch ins group... Oder oben raus...
Aber unab�ngig ist das MIN nicht... Es gilt innerhalb der group, also
innerhalb der KursID...
Und Sortierung war einmal gefordert, dann wieder nicht... Auf jeden fall
ist das jetzt nach kursID sortiert und gibt zu jedem kurs das f�hste
startdatum...


> Aus meiner Sicht kommt man hier um ein Sub-Select nicht herum. Also:

Doch... Siehe oben !?

> 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?

Also das sieht alles andere als performant aus... ;-)
Jedenfalls im vergleich zu einer l�sung mit nur einem join...
Das subselect wird ja f�r jeden kurs aufgerufen...

Und wozu die zus�tzliche abfrage? 
Alles geforderte - kurs & fr�hster termin - passt in einen view..

Claudius

~~~~~~~~~~~~~~~~~~~~~~~~~~~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

Antwort per Email an