Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 12.0.1 » SQL Anywhere サーバー SQL の使用法 » データの問い合わせと修正 » ジョイン:複数テーブルからのデータ検索 » 特殊なジョイン

 

派生テーブルを使用するジョイン

派生テーブルでは FROM 句内にクエリをネストできます。派生テーブルを使用すると、別のビューやテーブルを作成してそれにジョインすることなく、グループのグループ化を実行したり、グループを使用してジョインを構成することができます。

次の例では、内側の SELECT 文 (カッコに囲まれている) は顧客 ID 値でグループ分けされた派生テーブルを作成します。外側の SELECT 文はこのテーブルに相関名 sales_order_counts を割り当て、ジョイン条件を使用してそれを Customers テーブルとジョインします。

SELECT Surname, GivenName, number_of_orders
FROM Customers JOIN
   (  SELECT CustomerID, COUNT(*)
      FROM SalesOrders
      GROUP BY CustomerID  )
   AS sales_order_counts ( CustomerID, number_of_orders )
   ON ( Customers.ID = sales_order_counts.CustomerID )
WHERE number_of_orders > 3;

結果は各顧客の注文数を含む、4 件以上の注文をした顧客名のテーブルです。

 参照