前へ 次へ

タスク 11:  注文または支払いがあるお客様のみの表示 

データベースには、注文や支払いデータを持たないお客様も含まれています。お客様レポートのクエリーは、すべてのお客様を戻します。レポートを実行すると、図 12-23 に示すように、Orders および Payments テーブルの列見出しのみを表示するお客様行が生成されます。

図 12-23 あるお客様に関して注文または支払いデータを表示しないレポート

図 12-23  あるお客様に関して注文または支払いデータを表示しないレポート

お客様レポートのクエリーを変更することにより、注文または支払いを持たないお客様を除外することができます。

1  
2  
3  
  WHERE
  EXISTS
  (SELECT Orders.customerNumber
  FROM Orders
  WHERE Customers.customerNumber =
  Orders.customerNumber)
  または
  EXISTS
  (SELECT Payments.customerNumber
  FROM Payments
  WHERE Customers.customerNumber =
  Payments.customerNumber)
WHERE EXISTS 文節は Orders および Payments テーブルを検査し、Customers テーブルの customerNumber 値と一致する customerNumber 値があるかどうか調べます。 一致する customerNumber 値を持つ行のみが選択されます。完全な照会は、図 12-24 のようになります。

図 12-24「データ・セットの編集」の更新された SELECT 照会

図 12-24  「データ・セットの編集」の更新された SELECT 照会
4  
5  

(c) Copyright Actuate Corporation 2013