Неверный идентификатор в запросе оракула

У меня есть следующий запрос:

SELECT 
FIRST_NAME AS "NAME",
CASE COUNTRY
    WHEN "FR" THEN "FRANCE"
    WHEN "USA" THEN "UNITED STATES"
    WHEN "C RO" THEN NULL
ELSE COUNTRY 
    END AS "COUNTRY"
FROM RAWDATA

Это кажется довольно прямым, но я получаю следующую ошибку:

ociexecute(): ORA-00904: "C RO": invalid identifier in path

Я довольно новичок в оракуле, поэтому любая помощь будет оценена.

1 ответ

Решение

Попробуй это. Строковые литералы в oracle заключены в одинарные кавычки. Двойные кавычки используются для включения идентификаторов (например, имен таблиц и столбцов), но в вашем примере они не нужны.

SELECT 
FIRST_NAME AS NAME,
CASE COUNTRY
    WHEN 'FR' THEN 'FRANCE'
    WHEN 'USA' THEN 'UNITED STATES'
    WHEN 'C RO' THEN NULL
ELSE 'COUNTRY'
    END AS COUNTRY
FROM RAWDATA
Другие вопросы по тегам