Thinking in Data/[DL] DataSQL

[SQL Quiz] #A1003. 용어에 대한 단어로 분리 (형태소분석)

띤킹인 2023. 4. 23. 23:26

Level=3

Q) 다음 SQL을 참조하여, 다음 결과를 결과를 생성하는 SQL을 작성하시오.

  • W_DIC은 단어사전 데이터셋으로 11개의 단어가 존재한다.
  • 주어진 속성(ATTR_NM) 3개에 대하여 사전에 존재하는 대상과 사전에 존재하지 않는 단어를 식별해야 한다.
  • 단어와 단어는 underbar('_')로 구분해야 한다
  • 존재하지 않는 단어는 [ ] 로 표기 해야 한다. 

 

 

주) Regular Expression 함수 사용할 수 없음. 기본 문자열 함수만 사용해야 함

주) DA가 담당하는 현행데이터 분석 및 데이터표준화 수행시 활용되는 방법임

 

WITH W_DIC AS
(
    SELECT LOG_NM, PHY_NM
    FROM
    (                                    
        SELECT '통합'   LOG_NM, 'INT'  PHY_NM FROM DUAL UNION ALL
        SELECT '계약'   LOG_NM, 'CNRT' PHY_NM FROM DUAL UNION ALL                           
        SELECT '식별'   LOG_NM, 'IDNT' PHY_NM FROM DUAL UNION ALL                                    
        SELECT '번호'   LOG_NM, 'NO'   PHY_NM FROM DUAL UNION ALL
        ---------------------------------------------------------
        SELECT '약식'   LOG_NM, 'SMPL'   PHY_NM FROM DUAL UNION ALL
        SELECT '합'     LOG_NM, 'ADD'    PHY_NM FROM DUAL UNION ALL
        SELECT '합계'   LOG_NM, 'SUM'    PHY_NM FROM DUAL UNION ALL
        SELECT '명'     LOG_NM, 'NM'     PHY_NM FROM DUAL UNION ALL
        SELECT '계약식' LOG_NM, 'CNRTFM' PHY_NM FROM DUAL UNION ALL
        SELECT '코드'   LOG_NM, 'CD'     PHY_NM FROM DUAL                                    
    )
) 
SELECT
FROM (
          SELECT '통합계약식별번호' ATTR_NM
          UNION ALL
          SELECT '계약유형코드' ATTR_NM
          UNION ALL
          SELECT '계약합계금액' ATTR_NM
     ) A
;