エラーは異常ですが、発生場所をちょっと丁寧に説明しました。しかし、標準の修正は動作していないようです。SQLエイリアスであっても、作成ビューに重複する列名エラーがあります
ここでエラーが発生します。それは大きな声明だので、私はエラー
CREATE OR REPLACE VIEW SalesInvoiceDoc
AS
(SELECT si.salinv_Num, si.salinv_Terms, si.salinv_SaleDate,
es.empName AS SalesAgent, man.empName AS ApprovingManager,
si.salinv_ApproveDate, ...
... FROM service_invoice si
JOIN employee es
ON (es.empID = si.salinv_EmpID)
JOIN employee man
ON (man.empID = si.salinv_ManID)
は基本的にそれは販売代理店および承認マネージャーと販売請求書ドキュメントの見つけたところ私はちょうど掲示しています。どちらもemployeeテーブルに格納され、サブタイプ識別子は 'manager'または 'sales'に設定され、サブタイプchildrenテーブルのビューは重複エラーを回避します。
私は重複する列を試してみて、避けるために、エイリアスを供給してきましたが、私はこのスクリプトを実行すると、私は重複した列名のエラーが表示されます。
ORA-00957: duplicate column name
は、これを解決する方法を誰もが知っていますか?それも可能ですか?どんな助けでも大歓迎です。前もって感謝します!
編集:ここで正式な声明はあなたが2つの異なるテーブルの列名複製している
CREATE OR REPLACE VIEW SalesInvoiceDoc
AS
(SELECT si.salinv_Num, si.salinv_Terms, si.salinv_SaleDate,
es.empName AS SalesAgent,
man.empName AS ApprovingManager, si.salinv_ApproveDate,
sc.custName, sc.custHouse, sc.custCity,
sc.custState, sc.custZIP, sc.custPhone, sc.custEmail,
sv.vehicle_VIN, sv.vehicle_year, sv.vehicle_make,
sv.vehicle_model, sv.vehicle_ext_color, sv.vehicle_trim,
sv.vehicle_list_base_price, sv.vehicle_mileage, sv.vehicle_condition,
sv.vehicle_description,
ti.vehicle_make, ti.vehicle_year, ti.vehicle_model, ti.vehicle_VIN,
ti.tradein_allowance,
sv.vehicle_list_base_price "SellingPrice", sv.shipping "Shipping",
ti.tradein_allowance "TradeAllowance",
(sv.vehicle_list_base_price + sv.shipping - ti.tradein_allowance) "Subtotal",
(sv.vehicle_list_base_price + sv.shipping - ti.tradein_allowance)*.0825 "Taxes",
(sv.vehicle_list_base_price + sv.shipping - ti.tradein_allowance)*1.0825 "TotalSellingPrice"
FROM sales_invoice si
JOIN employee es
ON (es.empID = si.salinv_EmpID)
JOIN employee man
ON (man.empID = si.salinv_ManID)
JOIN customer sc
ON (sc.custID = si.salinv_CustID)
JOIN vehicle sv
ON (sv.vehicle_VIN = si.salinv_SalVIN)
LEFT OUTER JOIN vehicle ti
ON (ti.vehicle_VIN = si.salinv_tiVIN)
);
MySQLまたはMS SQL Serverを使用していますか? – jarlh
編集したタグ「Oracle」はエラー「ORA-00957」を参照しています。将来適切にタグ付けしてください。 – Rahul
'ビュービュー名(colname1、colname2、...)...を作成してください。 – jarlh