2017-12-21 3 views
0

sql/hql을 처음 사용합니다.주소를 찾으려면 Hiveql이 null이고 주소를 입력하십시오.

    :

    Card_ID Mid  Address     
    ------ ----- ---------------   
    1000  201  MG Road,bangalore  
    1000  301  MG Road,bangalore  
    1000  401  null 
    1000  501  null 
    
    2000  205  Plot # 5, Indira Nagar, Delhi 
    
    2000  305  Plot # 5, Indira Nagar, Delhi    
    2000  405  null 
    
    3000  109  psk road 
    
    3000  809  psk road 
    

    이는 Card_id의 하나 이상의 중간

    요구 사항을 갖는 만든 스테이징 테이블 아래에 설명 된 바와 같이 나는 논리의 구도를 아래 하이브 테이블을 데

  1. Card_id의 중간 주소가 null이고 null이 아닌 것을 확인하십시오. (고객의 검토를 위해이 값 세트로 테이블을 작성해야하므로이 요청을 작성하려면 SQL이 필요합니다.)
  2. 같은 card_ID에서 다른 중반 주소로 주소 열 null 값을 기입
  3. 원하는 출력

:

Card_ID Mid  Address     
------ ----- ---------------   
1000  201  MG Road,bangalore  
1000  301  MG Road,bangalore  
1000  401  MG Road,bangalore 
1000  501  MG Road,bangalore 

2000  205  Plot # 5, Indira Nagar, Delhi 

2000  305  Plot # 5, Indira Nagar, Delhi    
2000  405  Plot # 5, Indira Nagar, Delhi 

3000  109  psk road 

3000  809  psk road 

제발 너희들이 나에 대한 단계별로하여 HQL/SQL을 프레임에 도움이 될 수 있습니다 내일까지 내 고객에게 위의 o/p 배달을 얻을 수 있도록 내 이해. 당신은 윈도우 함수로 max()을 사용할 수 있습니다

+0

안녕 모두, 지금부터 내가 Card_id의 필요 중반 주소에 null 및 null이 아닌 확인 필요 내 고객이 검토 할 수 있도록하십시오.이 요청을 작성하려면 sql이 필요합니다.) 그래서 내 o/p caids는 1000과 2000이고 3000이 아닙니다. – Ramya

답변

1

:

select card_id, mid, 
     max(address) over (partition by card_id) 
from t; 
(I 값이 세트로 테이블을 만들 필요가
+0

안녕하세요, 고든, 빠른 업데이트를 주셔서 감사합니다 ... 저는 SQL을 처음 접했습니다. 내 게시물에서 편집 한대로 SQL 단계에 대해 자세히 설명해 주시겠습니까? – Ramya

+0

Gordon, 중간 주소가 null이고 null이 아닌 Card_id를 가져 오거나 식별 할 수있는 쿼리 프레임 구성에 도움이 될 수 있습니까? (클라이언트 검토를 위해이 값 집합을 사용하여 테이블을 만들어야합니다. 다른 중간 주소 값이 같은 card_id에 속하는 주소 null 값 – Ramya

+0

@Raya ... 새로운 질문은 댓글이 아닌 * questions *로 요청해야합니다. –

관련 문제