создать как выбрать в оракуле - PullRequest
0 голосов
/ 19 ноября 2009

У меня небольшой вопрос о создании таблицы с использованием других таблиц.

мой код:

create table TB_OLAP_TELEFONIA as 

select   ID                AS LOG_ID,
         HORAFIM           AS LOG_HORA,
         DURACAO           AS LOG_DURA,
         TO_CHAR( HORAFIM, 'D')  AS LOG_DIA_SEMANA,
         TO_NUMBER( SUBSTR( NUMEROA, 3, 1 ) ) AS LOG_NUMA_TIPO,
         TO_NUMBER( SUBSTR( NUMEROA, 3, 1 ) ) AS LOG_NUMB_TIPO,
         SUBSTR( NUMEROA, 1, 2) ) AS LOG_NUMA_ESTADO,          
         SUBSTR( NUMEROA, 1, 2) ) AS LOG_NUMB_ESTADO

from     DADOS_COLUNA_OLAP

Синтаксис неверен, и я не могу вспомнить, что используется в месте "как", чтобы дать правильное имя столбцу.

Хороший клей? Спасибо!

Ответы [ 2 ]

3 голосов
/ 19 ноября 2009

Синтаксис CTAS правильный. Ваша проблема - ошибка вырезать и вставить. Заменить

 SUBSTR( NUMEROA, 1, 2) ) AS LOG_NUMA_ESTADO,
 SUBSTR( NUMEROA, 1, 2) ) AS LOG_NUMB_ESTADO

с

 SUBSTR( NUMEROA, 1, 2)  AS LOG_NUMA_ESTADO, 
 SUBSTR( NUMEROA, 1, 2)  AS LOG_NUMB_ESTADO

редактировать

Пока я делаю это, я должен указать, что вы подстроки одного и того же столбца дважды, но с разными псевдонимами. Вы хотели это сделать?

 SUBSTR( NUMEROA, 1, 2)  AS LOG_NUMA_ESTADO, 
 SUBSTR( NUMEROB, 1, 2)  AS LOG_NUMB_ESTADO
               ^

Если это так, вам нужно исправить имя столбца в обоих местах.

2 голосов
/ 19 ноября 2009

Слишком много))

create table TB_OLAP_TELEFONIA as 

select   ID                AS LOG_ID,
         HORAFIM           AS LOG_HORA,
         DURACAO           AS LOG_DURA,
         TO_CHAR( HORAFIM, 'D')  AS LOG_DIA_SEMANA,
         TO_NUMBER( SUBSTR( NUMEROA, 3, 1 ) ) AS LOG_NUMA_TIPO,
         TO_NUMBER( SUBSTR( NUMEROA, 3, 1 ) ) AS LOG_NUMB_TIPO,
         SUBSTR( NUMEROA, 1, 2 ) AS LOG_NUMA_ESTADO,          
         SUBSTR( NUMEROA, 1, 2 ) AS LOG_NUMB_ESTADO

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