sql >> データベース >  >> RDS >> Mysql

人が受講したすべてのコースを表示するクエリを作成する方法

    SQLはテーブルを扱います。定義上、テーブルには一連の行があり、各行には互いに同じ列があります。クエリにより、受講した各コースのクライアントの情報を複製する結果セットが生成されます。

    プレゼンテーション層は、新しい各クライアントの最初の行に注目し、クライアントヘッダーを分割することにより、そのテーブルをフォーマットします。これは、php、Java、Crystal Reports、またはそのようなプレゼンテーション技術で行います。

    クエリは次のようなものです。

        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は、USING()を使用する際の落とし穴について良い点を示しています。 。これは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. SQLで3つのテーブルからデータを取得する方法

    2. 最初にアルファベットで並べ替え、次に番号で並べ替えます

    3. AndroidとMSSQLSERVER2008の接続

    4. 空間MySQLクエリのパフォーマンスの向上