아래 와 같이 데이터가 들어있는데요. 

 

비용 테이블의 CODE1, CODE2, CODE3, CODE4 가 모두 값이 있으면 문제가 없을 것 같은데... 

아래와 같이 빈값들이 있는 상황입니다. 

========================================================

WITH TABLE_A (USER_CD,    USER_NM,    CODE1,    CODE2,    CODE3,    CODE4 ) AS 
( SELECT '101',    'A'    ,'A-01',    '1',    'A0',    '1'

    UNION ALL 
 SELECT '101',    'B'    ,'A-01',    '2',    'A01',    '2'
    UNION ALL 
 SELECT '101',    'C'    ,'A-01',    '1',    'A13',    '1'
    UNION ALL 
 SELECT '101',    'D'    ,'A-01',    '3',    'A20',    '1'

, TABLE_B (CODE1    ,CODE2    ,CODE3    ,CODE4    ,COST ) AS 
( SELECT '','',        'A0',    '', 1000000
    UNION ALL 
 SELECT '','',        'A01',    '', 1000000
    UNION ALL 
 SELECT '','1',        'A13',    '1', 1000000
    UNION ALL 
 SELECT 'A-01','3',        'A20',    '1', 1000000

        
    Select * from 
    ( SELECT * FROM TABLE_A ) A
    inner join 
    ( SELECT * FROM TABLE_B ) B
    on A.CODE1 = B.CODE1 and  A.CODE2 = B.CODE2  and  A.CODE3 = B.CODE3 and  A.CODE4 = B.CODE4 

===========================================================================

 

Select * from 

( 사람속성 ) A

inner join 

( 비용  ) B

on 

A.CODE1 = B.CODE1 and A.CODE2 = B.CODE2 and A.CODE3 = B.CODE3 and A.CODE4 = B.CODE4

 

이렇게 했을 경우 값이 없는 데이터들에 대해 서는 가지고 오지 못하는 상황이 있어서.. 

 

비용 내역에서 CODE3의 값만 있는 경우 CODE1, CODE2, CODE4 는 무시하고 모두 값을 가지고 오고.. 

==> CODE1, CODE2, CODE3, CODE4 모두 값이 있으면 위처럼 조건이 걸리겠지만

TABLE_B 에 CODE3만 있을 경우에는 

A.CODE3 = B.CODE3 만 적용이 되어야겠죠... 나머지 조건은 무시가 되고... 

 

할 수 있을 까요?

 

질문이 너무 어렵네요.

 

 

 

사람 속성 

USER_CD USER_NM CODE1 CODE2 CODE3 CODE4
101 A A-01 1 A0 1
102 B A-01 2 A01 2
103 C A-01 1 A0 1
104 D A-02 1 A25 1
105 E A-02 2 A13 1
106 F A-01 1 A20 1
107 G A-01 2 A20 1
108 H A-01 3 A20 1
109 I A-02 1 A20 1
110 A A-02 2 A20 1

 

비용  

CODE1 CODE2 CODE3 CODE4 COST
    A0   1000000
    A01   1000000
  1 A13 1 0
  1 A25 1 300000
  2 A13 1 0
A-01 1 A20 1 0
A-01 2 A20 1 0
A-01 3 A20 1 0
A-02 1 A20 1 0
A-02 2 A20 1 0
No. Subject Author Date Views
Notice 2023년 1월 - SQLER의 업데이트 강좌 리스트 코난(김대우) 2023.01.02 2134
10749 두 개의 테이블을 비교해서 새로운 칼럼을 생성하는 법 [1] HoonkiGlenKim 2021.09.09 173
10748 오라클 쿼리문 질문 드립니다. 양아~ 2021.09.08 92
10747 DB CPU가 튈경우, 해당 쿼리확인하는 방법에 대해 .. [2] 박진홍1041 2021.09.08 257
10746 SQL 그룹핑 관련해서 질문드립니다. [1] file 윌렴 2021.09.08 145
10745 MSSQL Insert 시 자동증가를 조건에 따라 증가 시킬수 있을까요? [2] taekyungha 2021.09.08 357
10744 sql서버 쿼리 관련 문의를 드려요 (컬럼 별 랜덤 값 조회 ) [2] 나는야 2021.09.04 119
10743 시작시간, 종료시간이 있을 때 월이 바뀌는 경우 분할하여 SELECT mesmerist 2021.09.03 110
» 두 테이블을 join 해서 값을 가지고 올때 양쪽에 모두 값이 있을 경우만 조건이 걸리게 DOOLLY 2021.09.03 106
10741 VC++ 에서 ADO 의 RecordSet 을 이용해 select 시 실패하는 경우에 대한 문의드립니다. [3] Cover Fly 2021.09.02 116
10740 [사용자 'NT AUTHORITY\ANONYMOUS LOGON'이(가) 로그인하지 못했습니다.] 오류 문의 드립니다. 제비 2021.09.01 230
10739 [사용자 'NT AUTHORITY\ANONYMOUS LOGON'이(가) 로그인하지 못했습니다.] 오류 문의 드립니다. [1] 제비 2021.09.01 139
10738 각 필드별로 중복제거하여 포함 된 값 조회 [1] DOOLLY 2021.09.01 221
10737 Db 업데이트 시 값을 계속해서 업데이트 하는방법 [1] jen 2021.08.28 118
10736 서버 메모리 사용률 높이는 방법 [2] file 뱃살왕자 2021.08.27 219
10735 코드 데이터 저장시.. 코드값? 단어? 차이가 없을까요? [2] 레몽 2021.08.27 122
10734 (mssql) 쿼리질문 드립니다. 현재일 기준으로 이벤트기간이라면 이벤트가격을 아니라면 평상시 가격을 표시하려 합니다. [1] 열심히5413 2021.08.21 135
10733 mssql 마이그레이션 관련 질문좀 드립니다. [2] 마나 2021.08.20 127
10732 MS SQL / Maria DB 보안성 비교 [2] 넷째형 2021.08.18 225
10731 오더 정보(또는 헤더 아이템 형태구조) 문서 수정시 아이템 처리 FelixJung 2021.08.07 104
10730 MSSQL 질문드립니다. [2] 김민배 2021.08.02 188





XE Login