database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
ㆍPostgreSQL
Firebird
Oracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
PostgreSQL Q&A 9006 게시물 읽기
No. 9006
조건절을 하나 만들어야 하는데 도움좀 주세요. ㅋㅋ
작성자
김현진(tokssonda)
작성일
2012-07-13 14:59ⓒ
2012-07-13 15:01ⓜ
조회수
9,474

table

id , value

a , 1

a, 2

a, 3

b, 1

b, 2

b, 4

c, 1

c, 2

c, 3

. ..

이런식으로 테이블에 레코드 값이 있는데요.

쿼리를 짜야하는 문제는 id a가 가지고 있는 value 1,2,3 값을 동일하게 가지고 있는 몰아이디를 찾아야

하는데 -ㅂ- 영 모르곘네요. 고수님들에 많은 조언 부탁 드립니다.

그래서 결과는 c가 나오면 되는데 -ㅂ- 잘 모르겠네요 ㅋㅋ

 

이 글에 대한 댓글이 총 4건 있습니다.

제가 정말 미숙하나마 서브쿼리를 사용하여

 

컬럼 a 의 값과 같지 않은 테이블을 제외하는 조건으로 구현하였으나,

 

서브쿼리로 인해 성능에 대해서는 기대하기 어려울거같습니다.

 

이 쿼리보다 더 좋은 의견 가지신분들 많을텐데

 

다른분들 의견도 듣고싶습니다.(원래 이러면서 배우는거 아니겠습니까 ^^)

 

table test5데이터는 이렇습니다

id  | value
-----------
a   |    1
a   |    2
a   |    3
b   |    1
b   |    1
b   |    2
b   |    4
c   |    1
c   |    2
c   |    3
d   |    1
d   |    2
d   |    3
e   |    1
e   |    3
e   |    5


 

 

 

 

select id, value from test5
except
select c.id, d.value from
(
select id, value from test5
except
select b.id, b.value from (
select id, value from test5 where id = 'a') as a join test5 b
on a.value = b.value
) as c left outer join test5 d on c.id = d.id order by 1,2
 

배진홍(배진홍)님이 2012-07-13 18:06에 작성한 댓글입니다.
이 댓글은 2012-07-13 18:07에 마지막으로 수정되었습니다.

아 정말 감사합니다. 대단한데요 ㅋㅋㅋ

우선 원하는값이 출력되는것만으로도 -ㅂ- 완전 놀랐습니다.

ㅋㅋㅋ 기발하네요. 유용하게 사용하겠습니다!!

김현진(tokssonda)님이 2012-07-13 18:15에 작성한 댓글입니다.

배열을 이용하면 아주 쉽게 해 볼 수 있습니다.

 

데이타 량에 따라 성능은 어떨지 모르겠네요

 

select id from

  (select id, sort(uniq(array_agg(value))) as arr from table

  group by id) as t

where arr = (select sort(uniq(array_agg(value))) from table

                    where id = 'a');

 

tyro님이 2012-07-14 16:19에 작성한 댓글입니다.
이 댓글은 2012-07-14 16:22에 마지막으로 수정되었습니다. Edit

답변주셔서 감사합니다. ^ ^ 한번도 안써본 방법이네요 ㅋ

김현진(tokssonda)님이 2012-07-20 15:32에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
9009pgAdmin 3 에서 한글 깨짐.. [1]
박대건
2012-07-19
12188
9008트리거 AFTER LOGON ON DATABASE 사용 여부 [3]
노진광
2012-07-18
9489
9007postgreSQL 외부 라이브러리 활용 방법 2 [4]
노진광
2012-07-16
11649
9006조건절을 하나 만들어야 하는데 도움좀 주세요. ㅋㅋ [4]
김현진
2012-07-13
9474
9005Dump Size와 관련하여 문의 드립니다. [1]
박병훈
2012-07-06
9305
9004postgreSQL 외부 라이브러리 활용 방법 [2]
노진광
2012-07-04
9844
9003복구할대요 테이블 생성이 안됩니다. [2]
김선희
2012-06-28
11817
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.017초, 이곳 서비스는
	PostgreSQL v16.4로 자료를 관리합니다