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
운영게시판
최근게시물
MySQL Q&A 29451 게시물 읽기
No. 29451
조건문 재 질문드림
작성자
신철화(cassdog)
작성일
2009-12-06 22:18ⓒ
2009-12-06 22:36ⓜ
조회수
6,169

안녕하십니까 질문을 하나드려서 
조금 쉽게 답을 얻고자 ㅡㅠ 이렇게 문을 다시 두드립니다.
검색으로는 도저히 못 찾겠더라구요..ㅡㅠ
BABO_TABLE
========================
TIME    DROP       ID
========================
8         12        A
8          7        A
8          6        A

9         11        B
9          7        B
9         10        B

10        12        C
10         9        C
10        13        C
========================

데이타가 위와 같습니다. 어떤 조건을 줘야 TIME이 8,9,10 모두가 DROP>10인 A를 추출해낼 수 있을까요??


SELECT * FROM BABO_TABLE (TIME =8 and DROP>10) and (TIME =9 and DROP>10) and (TIME =10 and DROP>10)

이렇게 쿼리를 주면 당연히 안되더라구요..시간이 8인놈이랑 9인놈이랑 10인놈이 모두 and로 걸려버리니 당연히 결과는 없을 수 밖에 없구요..ㅡㅠ


SELECT * FROM (
                SELECT * FROM ( 
                                 SELECT * FROM BABO_TABLE WHERE TIME =8 and DROP>10
                              ) a 
                WHERE a.TIME=9 and a.DROP>10
              ) b 
WHERE b.TIME=10 and b.DROP>10

이런식으로 하면 당연히 가장안에 있는 쿼리에서 TIME=8로 다 걸러져 버리니 다음에 TIME=9에 조건에서는 당연히 결과가 없네요
한번할때마다 한번씩 조인땡겨서 뽑는 방식을 생각을하고 있는데,,너무 쿼리가 복잡해져서 조금 쉽게 하는방법이 없을까 해서요.ㅡㅠ

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

일단 제시해주신 BABO_TABLE이 아래와 같은 거라 가정하고 적어봅니다. ( ID에서 약간 실수하신듯 )

BABO_TABLE

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

TIME DROP ID

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

8 12 A

8 7 B

8 6 C

 

9 11 A

9 7 B

9 10 C

 

10 12 A

10 9 B

10 13 C

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

 

 

일단, TIME이 정수형임을 가정하고, 서브 쿼리가 가능하다면 아래 쿼리로 가능할 것 같습니다.

 

SELECT ID, COUNT(*) AS C FROM ( SELECT * FROM BABO_TABLE WHERE DROP > 10 AND TIME >= 8 AND TIME <= 10 GROUP BY TIME, ID ) x GROUP BY ID HAVING C >= 3

박현우(lqez)님이 2009-12-07 00:59에 작성한 댓글입니다.
이 댓글은 2009-12-07 00:59에 마지막으로 수정되었습니다.
[Top]
No.
제목
작성자
작성일
조회
29457순번 문의 [1]
2009-12-08
5893
29456skip-locking 문의 드립니다. [2]
조경휴
2009-12-07
6774
29455디비 전체 테이블에 대해서 check table을 수행하려면.. [4]
김주홍
2009-12-07
6040
29451조건문 재 질문드림 [1]
신철화
2009-12-06
6169
29449계산 함수요!
앙!
2009-12-03
6188
29448날짜별 재료별 묶기 [1]
질문
2009-12-03
6289
29447mysql Query Cache에 대해서 질문드립니다. [2]
초보
2009-12-03
6313
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.018초, 이곳 서비스는
	PostgreSQL v16.4로 자료를 관리합니다