Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Jak sformułować zapytanie, aby pokazać wszystkie kursy podjęte przez daną osobę?

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



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Problem z Apache w Xampp po wielu instalacjach Apache

  2. Jak uzyskać najnowszy rekord w każdej grupie za pomocą GROUP BY?

  3. Jak przechowywać tagi w tagach MySQL, jedno pole w sumie lub jedno pole dla każdego tagu?

  4. Określanie hasła w ciągu połączenia MySQL

  5. ER_HOST_NOT_PRIVILEGED — kontener dockera nie łączy się z mariadb