Oracle选择语法到Postgres

时间:2010-01-18 22:11:14

标签: sql database oracle postgresql

我正在将Oracle语法转换为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”在做什么?

3 个答案:

答案 0 :(得分:1)

它是一个计算列,使用静态定义的值。

答案 1 :(得分:1)

代码段'Y' "AIRMOVE"将计算列引入名为AIRMOVE的选择列表,其值始终为'Y'

答案 2 :(得分:1)

部分混淆可能来自PostgreSQL 8.3或更早版本,其中“AS”关键字不是可选的。

变化:

'Y'   "AIRMOVE"

要:

'Y' AS "AIRMOVE"

它应该可以正常工作。从版本8.4开始,关键字是可选的,尽管我主张总是包含它以避免与此问题完全相同的问题。