Oracle выбирает синтаксис в Postgres - PullRequest
0 голосов
/ 19 января 2010

Я конвертирую синтаксис 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 ]

1 голос
/ 19 января 2010

Фрагмент 'Y' "AIRMOVE" вводит вычисляемый столбец в список выбора с именем AIRMOVE, значение которого всегда 'Y'.

1 голос
/ 19 января 2010

Часть путаницы может исходить из PostgreSQL 8.3 или более ранней версии, где ключевое слово «AS» не является обязательным.

Изменение:

'Y'   "AIRMOVE"

Кому:

'Y' AS "AIRMOVE"

И это должно работать нормально. Ключевое слово является необязательным, начиная с версии 8.4, хотя я рекомендую всегда включать его, чтобы избежать проблем, подобных этой.

1 голос
/ 19 января 2010

Это вычисляемый столбец, использующий статически определенное значение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...