簡體   English   中英

對多個表使用CREATE VIEW

[英]Using CREATE VIEW with multiple tables

我正在嘗試使用CREATE VIEW以及3個不同表中的多個單元格,並在兩個單元格之間進行乘法運算。 某處存在語法錯誤,但我似乎無法識別它。

CREATE VIEW ORDERS AS CustFirstname, CustLastName, o.Ordernumber AS OrderNumber, 
o. OrderDate AS OrderDate, o.ShipDate AS ShipDate, c.QuotedPrice, 
c.QuantityOrdered, c.QuotedPrice * c.QuantityOrdered AS ItemTotal FROM Customers 
NATURAL JOIN Orders o NATURAL JOIN Order_Details c

我嘗試獲取的輸出是| CustFirstname | CustLastName | OrderNumber | OrderDate | ShipDate | ItemTotal |。

更新:如果我用“選擇”替換“創建視圖訂單為”,它似乎可以工作

您缺少最重要的語句“ SELECT”。

CREATE VIEW ORDERS AS 
SELECT CustFirstname, CustLastName, o.Ordernumber AS OrderNumber, 
o. OrderDate AS OrderDate, o.ShipDate AS ShipDate, c.QuotedPrice, 
c.QuantityOrdered, c.QuotedPrice * c.QuantityOrdered AS ItemTotal FROM Customers 
NATURAL JOIN Orders o NATURAL JOIN Order_Details c

CREATE VIEW語句上,您缺少查詢的SELECT

CREATE VIEW ORDERS AS 
    SELECT CustFirstname, CustLastName, o.Ordernumber AS OrderNumber, 
        o. OrderDate AS OrderDate, o.ShipDate AS ShipDate, c.QuotedPrice, 
        c.QuantityOrdered, c.QuotedPrice * c.QuantityOrdered AS ItemTotal 
    FROM Customers NATURAL JOIN Orders o NATURAL JOIN Order_Details c

CREATE VIEW的定義上,您可以看到select_statement是必需的:

CREATE
    [OR REPLACE]
    [ALGORITHM = {UNDEFINED | MERGE | TEMPTABLE}]
    [DEFINER = { user | CURRENT_USER }]
    [SQL SECURITY { DEFINER | INVOKER }]
    VIEW view_name [(column_list)]
    AS select_statement
    [WITH [CASCADED | LOCAL] CHECK OPTION]

您可以在官方文檔中找到有關CREATE VIEW更多信息。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM