2017-11-14 7 views
-1

ビューをリレーションとして使用するクエリの例を教えてもらえますか?または、このクエリをリレーションとしてのビューとしてどのようにすることができますか?ビューをリレーションとして使用するクエリ

SELECT COUNT(Y.custorderID) AS NoOfOrders, x.city ||' '|| 
     EXTRACT(YEAR FROM TO_DATE(Y.dateorderplaced, 'DD-MON-RR')) 
FROM (SELECT custorderid, custID, customerorder.dateorderplaced 
     FROM CustomerOrder 
     WHERE EXTRACT(MONTH FROM 
      TO_DATE(CustomerOrder.dateorderplaced, 'DD-MON-RR')) =1 AND EXTRACT(YEAR FROM 
     TO_DATE(CustomerOrder.dateorderplaced, 'DD-MON-RR')) = 2017 
    ) Y 
    INNER JOIN Customer x 
     ON Y.custID = x.custID 
GROUP BY x.city, y.dateOrderplaced 
+1

抽出はOracleです。これは正しくタグ付けされていますか –

+0

@ P.Salmon私の悪いサー – life

+0

「ビューを関連として」とは何ですか?注:ビューは単にテーブルのように使用できます。 –

答えて

0
Create view getProducts_v as (
    SELECT * 
    FROM Product 
    WHERE Active = 'Y' and OnHandQty>0); 

SELECT * 
FROM GetProducts_v P 
INNER JOIN ProductCategory PC 
on PC.ProductID = P.ID 
WHERE PC.Name in ('Houseware','Kitchen') 

ビューgetProducts_vのみがアクティブであり、可用性が存在するアイテムのリストを提供します。

このクエリは、ビューを使用して、家庭用キッチン内の製品のみのリストを取得します。ビューは既に非アクティブなものと0のonHandQtyのものを除外しているため、私たちはユーザーが私たちにインアクティブとアクティブを持っているものだけを表示します。

あなたが持っているもの撮影:

CREATE view GetOrderHeader_v as (
     SELECT custorderid, custID, customerorder.dateorderplaced 
     FROM CustomerOrder 
    ); 

SELECT COUNT(gOH.custorderID) AS NoOfOrders 
    , x.city ||' '|| EXTRACT(YEAR FROM TO_DATE(gOH.dateorderplaced, 'DD-MON-RR')) 
FROM GetOrderHeader_v gOH 
INNER JOIN Customer x 
    ON gOH.custID = x.custID 
WHERE EXTRACT(MONTH FROM TO_DATE(gOH.dateorderplaced, 'DD-MON-RR')) =1 
    AND EXTRACT(YEAR FROM TO_DATE(gOH.dateorderplaced, 'DD-MON-RR')) = 2017 
GROUP BY x.city ||' '|| EXTRACT(YEAR FROM TO_DATE(Y.dateorderplaced, 'DD-MON-RR')) 
     , gOH.dateOrderplaced; 

ノートは、私はそれが不要なオーバーヘッドを追加すると、フィールドが既に日付データ型である場合は、上記のTO_DATEを使用することはありません。 dateorderplacedがまだ日付でない場合、私はテーブル構造にいくつか懸念があります。

通常、私は複雑なクエリでこのようなビューを使用するか、冗長チェックを排除するためにロジック内にテーブルを入れたいと思っていました。アクティブな製品のみを表示するなど、製品テーブルから製品を削除しないので、削除された製品や在庫切れの商品を表示しないGetProducts_vを参照するようにします。

関連する問題