Hallo zusammen,
bin einigermassen unerfahren was SQL-Abfragen betrifft und hoffe, dass mir hier vielleicht jemand helfen kann.
Arbeite mit klassischem ASP, VBScript und einer Access-Datenbank.
Habe eine Tabelle mit Gebäuden (Tabelle heist PR_TEST, die Felder ID_PR, Titel, Ort etc.) und eine zweite Tabelle mit Fotos (ID, ID_PR - verweis auf die andere Tabelle, Titelbild ja/nein, Dateiname - nur der Dateiname ist in der Datenbank abgelegt) die zu den Gebäuden gehören. Zu den Gebäuden können jeweils keine bis unendlich viele Fotos gehören.
Nun möchte ich als Resultat alle Objekte (egal ob ohne oder mit vielen Fotos) inkl. dem Titelbild (resp. Dateinamen des Titelbildes) erhalten.
Was ich erreicht hab:
- mit "SELECT PR_TEST.ID_PR, PR_Fotos.ID_PR, PR_TEST.Titel, PR_Fotos.Dateiname FROM PR_TEST INNER JOIN PR_Fotos ON PR_TEST.ID_PR = PR_Fotos.ID_PR" erhalte ich alle Objekte, leider aber auch viele Objekte mehrfach, da für diese Objekte eben auch mehrere Fotos vorhanden sind. Sobald ich am Schluss ein "GROUP BY PR_TEST.ID_PR " einfüge, erhalte ich folgende Fehlermeldung: [Microsoft][ODBC Microsoft Access Driver] You tried to execute a query that does not include the specified expression 'ID_PR' as part of an aggregate function.
- habe auch versucht, mit Alias zu arbeiten: "SELECT A.PR_ID From PR_TEST As A INNER JOIN (Select B.ID_PR From PR_Fotos as B WHERE Titelbild = -1 ) On A.PR_ID = B.PR_ID". Das bringt mir leider folgende Fehlermeldung: [Microsoft][ODBC Microsoft Access Driver] Syntax error in JOIN operation.
Hat mir jemand einen Tip? Veilen Dank!