2013-07-10 49 views
0

嗨,我是創建以下列方式創建硬編碼值的視圖,而無需編寫插入

CREATE OR REPLACE FORCE VIEW tableA (field1, field2) 
AS 
    SELECT 
    CAST("state" AS  CHAR(2)), 
    CAST("LOCALITY_NAME" AS CHAR(31)), 
    FROM tableB; 

我需要添加一個稱爲「id」更多柱,並用硬編碼值'填充它的視圖abc'的所有行。創建視圖時可以這樣做嗎?我曾見過this thread,但我無法理解它適合我的情況。

+0

是'CAST( 「狀態」 爲char(2))'一個錯字,因爲'state'比2個charatcers長? –

+0

不,狀態是表B中的列,狀態列中的值是<= 2個字符 – learningnothing

回答

2
SELECT 'abc' as id, 
     CAST("state" AS CHAR(2)), 
     CAST(LOCALITY_NAME AS CHAR(31)), 
FROM tableB 
+0

我還需要將id的數據類型設置爲char(3)。我可以在這裏做到這一點嗎? – learningnothing

+0

我原以爲它是'char(3)'自動。但不能肯定地說。 –

+0

謝謝你,我會嘗試和發佈它在這裏,如果它需要char(3) – learningnothing

0

當然,只是將其添加爲constanct值:

CREATE OR REPLACE FORCE VIEW tableA (field1, field2) 
AS 
    SELECT 
    CAST("state" AS  CHAR(2)), 
    CAST("LOCALITY_NAME" AS CHAR(31)), 
    'abc' AS id 
    FROM tableB;