2016-10-24 2 views
0

에 가입 I가 다음 쿼리 ...그룹은 오라클

SELECT msn.id_notificacion AS notifiId, plt.planta_id AS plantaId, plt.planta_desc AS plantaDesc, orgPlt.org_id AS orgIdPlanta, 
orgPlt.org_desc AS orgDescPlanta, age.agencia_id AS agenciaId, age.agencia_desc AS agenciaDesc, orgAge.org_id AS orgIdAgencia, 
orgAge.org_desc AS orgDescAgencia, msn.user_contac AS usuario, msn.email_orig AS correo 
FROM cat_cpd_orig_ip msn 
FULL OUTER JOIN cat_plantas_erp plt ON msn.planta_id = plt.planta_id 
FULL OUTER JOIN cat_planta_loc pltLoc ON plt.planta_id = pltLoc.planta_id 
FULL OUTER JOIN cat_organizacion_adi orgPlt ON pltLoc.org_id = orgPlt.org_id 
FULL OUTER JOIN cat_agencia_erp age ON msn.agencia_id = age.agencia_id 
FULL OUTER JOIN cat_agencia_loc ageLoc ON age.agencia_id = ageLoc.agencia_id 
FULL OUTER JOIN cat_organizacion_adi orgAge ON ageLoc.org_id = orgAge.org_id 
WHERE msn.id_notificacion IS NOT NULL GROUP BY usuario ORDER BY usuario 

그러나 때 그룹 나는 다음과 같은 오류가있는 결과 ...

ORA-00904: "USUARIO": identificador no valido 
00904. 00000 - "%s: invalid identifier" 
*Cause:  
*Action: 
Error en la línea: 11, columna: 48 

내 쿼리 다음과 같은 결과를 반환 ...

27 4570 BLM_ATITALAQUIA      63 BARCEL     PRUEBA PLANTA TRES [email protected] 
9 109  WM_MEXICO       62 BIMBO     PRUEBA PLANTA DOS [email protected] 
8 727  STE_MARINELA VILLAHERMOSA   62 BIMBO     PRUEBA PLANTA DOS [email protected] 
29 1225 BLM_LAGUNA       63 BARCEL     PRUEBA PLANTA TRES [email protected] 
28 1605 BLM_CDIS OCCIDENTE     63 BARCEL     PRUEBA PLANTA TRES [email protected] 
3 5483 GLO_MEXICO       64 EL GLOBO    PRUEBA PLANTA UNO [email protected] 

그러나 나는 다음과 같은 결과가 필요합니다 ...

3 5483 GLO_MEXICO       64 EL GLOBO    PRUEBA PLANTA UNO [email protected] 
9 109  WM_MEXICO       62 BIMBO     PRUEBA PLANTA DOS [email protected] 
27 4570 BLM_ATITALAQUIA      63 BARCEL     PRUEBA PLANTA TRES [email protected] 

결과를 'usuario'로 그룹화해야합니다. 도와 주실 수 있습니까?

감사합니다!

답변

2

오라클에 GROUP BY의 테이블 별칭을 사용할 수 없습니다. 그래서, 당신의 오류에 대한 명백한 수정은 다음과 같습니다

GROUP BY msn.user_contac 
ORDER BY msn.user_contac 

은 그러나, 단지 다른 오류가 발생합니다 - 당신이 아닌 GROUP BY에 집계되지 않은 그 SELECT에서 엄청나게 많은 열을 가지고있다. 다른 오류가 발생합니다.

질문에 원하는 것을 지정하지 않았습니다. GROUP BY 오류 만 언급합니다. 그래서,이 질문에 대한 답변을하지만, 당신의 문제를 해결하지 않습니다.

샘플 데이터 및 원하는 결과를 사용하여 수행하려는 작업에 대한 자세한 설명과 함께 다른 질문을 할 수 있습니다.

+0

내 쿼리는 다음 결과를 반환합니다 ... – Lawliet

+0

질문의 본문에서 내가해야 할 일에 대해 자세히 기록했습니다. 고맙습니다! – Lawliet