Oferty SQL w tabelach. Z definicji tabela składa się z kilku wierszy, z których każdy ma te same kolumny. Twoje zapytanie przyniesie zestaw wyników, który powiela informacje o kliencie dla każdego kursu, który wybrała.
Twoja warstwa prezentacji sformatuje tę tabelę, zauważając pierwszy wiersz każdego nowego klienta i rozdzielając nagłówek klienta. Zrobisz to w php, Java lub Crystal Reports lub w innej technologii prezentacji.
Twoje zapytanie wygląda mniej więcej tak.
SELECT a.id, a.name, a.address, a.etc,
c.Name
FROM Clients a
JOIN CoursesForClients b USING(ClientID)
JOIN Courses c USING(CourseID)
ORDER BY a.id, c.CourseID
@Strawberry dobrze mówi o pułapce używania USING()
. Oto to samo zapytanie w ON
.
SELECT a.id, a.name, a.address, a.etc,
c.Name
FROM Clients a
JOIN CoursesForClients b ON a.ClientID = b.ClientID
JOIN Courses c ON b.CourseID = c.CourseID
ORDER BY a.id, c.CourseID