2010-01-18 82 views
0

我將與Oracle語法向Postgres甲骨文選擇語法向Postgres

SELECT MSN_INT_ID, 
     MO_INT_ID, 
     'Y' "AIRMOVE" 
    FROM MISSION_OBJECTIVE 
WHERE MO_MSN_CLASS_CD = 'AMV' 
GROUP BY MSN_INT_ID, 
      MO_INT_ID 

這部分是困惑我:

SELECT MSN_INT_ID, 
     MO_INT_ID, 
     'Y' "AIRMOVE" 

什麼是 'Y' 「AIRMOVE」 幹什麼?

回答

1

代碼段'Y' "AIRMOVE"在名爲AIRMOVE的選擇列表中引入了一個計算列,其值始終爲'Y'

1

這是一個計算列,使用靜態定義的值。

1

部分混淆可能來自PostgreSQL 8.3或更早版本,其中「AS」關鍵字不是可選的。

變化:

'Y' "AIRMOVE" 

要:

'Y' AS "AIRMOVE" 

,它應該工作的罰款。從8.4版開始,關鍵字是可選的,儘管我主張總是將其包含在內,以避免與此類似的問題。