2015-01-20 2 views
0

У меня проблема, потому что я получаю сообщение об ошибке без поддержки столбца, и я не знаю, где причина. Кто-нибудь знает ответ и может помочь? Заранее спасибо :) Код:Неподдерживаемый ораторский окольный столбец

with 
ContractByRole (intermediary_nr, beneficiary_role, contract_nr) as (
    select intermediary_nr, beneficiary_role, max(contract_nr) contract_nr 
    from boscs.atcs_commission_beneficiary 
    where beneficiary_role in('LEAD', 'SUP_FOR_LEAD', 'COAGENT') 
     and intermediary_nr is not null 
    group by intermediary_nr, beneficiary_role 
) 

AllRoles(contract_nr) as (
    select contract_nr 
    from  ContractByRole 
    group by contract_nr 
    having count(*) = 3 
) 

select cbr.* 
from ContractByRole cbr 
join AllRoles  ar 
    on ar.contract_nr = cbr.contract_nr; 

показать ошибки в этом месте:

ContractByRole(intermediary_nr, beneficiary_role, contract_nr) as (
+0

И точно e Сообщение об ошибке? –

+0

ORA-32033: неподдерживаемый псевдоним столбца –

+3

Вы, кажется, не встречаете ',' перед 'AllRoles (contract_nr) как'? – shahkalpesh

ответ

0

Вы пропустили через запятую, чтобы отделить два подзапроса в вашем предложении WITH -

Edit Try это: (Не уверен, действительно ли вам нужен рекурсивный подзапрос)

WITH contractbyrole 
    AS 
    ( 
       SELECT intermediary_nr, 
         beneficiary_role, 
         Max(contract_nr) contract_nr 
       FROM  boscs.atcs_commission_beneficiary 
       WHERE beneficiary_role IN('LEAD', 
              'SUP_FOR_LEAD', 
              'COAGENT') 
       AND  intermediary_nr IS NOT NULL 
       GROUP BY intermediary_nr, 
         beneficiary_role 
    ) 
    , --> here is the missing comma 
    allroles 
    AS 
    ( 
       SELECT contract_nr 
       FROM  contractbyrole 
       GROUP BY contract_nr 
       HAVING count(*) = 3 
    ) 
SELECT cbr.* 
FROM contractbyrole cbr 
JOIN allroles ar 
ON  ar.contract_nr = cbr.contract_nr; 
+0

Я добавляю «,» в этом месте, и у меня такая же ошибка. –

+0

, и если кто знает, как его преобразовать в нормальное состояние без предложения с запросом? –

+0

@DamianR, проверьте изменения –

Смежные вопросы