일대다 데이터 중 한 키값에 대해 한개의 값만 출력하고 싶습니다 ㅠㅠ 0 3 5,106

by 오라클에_폭탄심으러 [Oracle 기초] oracle plsql [2019.10.29 21:29:57]


id │ 값1 │ 값2

--------------------

1  │ a   │  a-1

1  │ a   │  a-2

2  │ b   │  b-1

2  │ b   │  b-2

3  │ c   │  c-1

 

이러한 테이블이 있을 때 값을 

id │ 값1 │ 값2

--------------------

1  │ a   │  a-1

2  │ b   │  b-1

3  │ c   │  c-1

이렇게 추출 하고 싶습니다 ㅠㅠ

값2는 어떤 값이든 상관 없지만 한개만 출력 되어야 합니다 ㅠㅠ(다른 키로 갖다 써야 함...)

이럴 때 쿼리를 대체 어떻게 짜야 하는걸까요 ㅠㅠㅠㅠㅠ

검색하면 금방 나올 것 같은데 뭐라고 검색해야 할 지 도통 모르겠네요 ㅠㅠ

by 우리집아찌 [2019.10.30 07:28:32]
select *
  from ( select t.*
                     , row_number() over(partition by id , 값1 order by 값2 ) rn
                from t
            )
  where rn= 1

 


by 마농 [2019.10.30 07:47:37]
SELECT id
     , v1
     , MIN(v2) v2
  FROM t
 GROUP BY id, v1
;

 


by 오라클에_폭탄심으러 [2019.10.30 10:30:26]

감사합니다 선배님들 ㅠㅠ 일 하러 가보겠습니다

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입