我想創建視圖與三個表的聯合。但在結果查詢中,我想要一個額外的列,如'tableId'。添加額外的列來查看,這是不存在的表
我的代碼是這樣
CREATE OR REPLACE VIEW DETAILS
AS SELECT
* FROM
(
SELECT
T1.ID,
T1.AMOUNT,
T1.STATUS,
T1.ADDEDBY,
T1.ADDEDON
FROM Table1 T1
UNION ALL
SELECT
T2.ID,
T2.AMOUNT,
T2.STATUS,
T2.ADDEDBY,
T2.ADDEDON
FROM Table2 T2
UNION ALL
SELECT
T3.ID,
T3.BILLAMOUNT,
T3.STATUS,
T3.ADDEDBY,
T3.ADDEDON
FROM Table3 T3
);
這給了我所需要的三個表的聯合。 但是我怎樣才能得到表Id列結果輸出?該列不在三個表中的任何一箇中。
感謝這很有幫助 – user1181942 2012-07-23 08:15:03
我得到'視圖的SELECT包含FROM子句中的子查詢'是這種特定於Oracle的語法嗎?我有MySQL(通過phpmyadmin運行)thx – Awena 2015-04-01 13:21:22
@Awena - 語法應該是ANSI標準(雖然標準可能需要內聯視圖是別名)。然而,我不知道,如果MySQL支持它,或者需要做什麼調整來使查詢在MySQL上工作。 – 2015-04-01 14:36:24