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 29987 게시물 읽기
No. 29987
DB초보 쿼리문 질문입니다.
작성자
최대호(cdhkjh)
작성일
2011-05-11 20:02
조회수
8,411

 안녕하세요

page    |     date

00001  |  20110101

00001  |  20110104

00001  |  20110105

00002  |  20110102

00002  |  20110104

00002  |  20110105

00003  |  20110105

00003  |  20110106

00003  |  20110107

이런 구조의 테이블있는데요 

 

page로 group by 하면 

*실제 결과                        *원하는 결과                                

00001  |  20110104       00001  |  20110101

00002  |  20110104  -> 00001  |  20110102

00003  |  20110106       00001  |  20110105

이런식으로 date 부분이 랜덤하게 나옵니다.

 제가 구현하고 싶은 부분은 date 부분을  page 중 가장 빠른 날짜(작은 날짜)로 보이게 하고 싶으면 꼭 서브쿼리를 넣어야하나요?

이상태에서 where 문이나 기타 다른 방법이 있는지 궁금합니다.

 

 

 

 

 

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

이런 결과를 말씀하시는건지...^^;

 

with table1 as (
select '0001' page, '20110101' date union all
select '0001' page, '20110104' date union all
select '0001' page, '20110105' date union all
select '0002' page, '20110102' date union all
select '0002' page, '20110104' date union all
select '0002' page, '20110105' date union all
select '0003' page, '20110105' date union all
select '0004' page, '20110105' date union all
select '0003' page, '20110106' date union all
select '0004' page, '20110107'
)
 
select page, min(date)
  from table1
 group by page

JaCkalRedi님이 2011-05-12 11:07에 작성한 댓글입니다. Edit

올려주신 '*원하는 결과' 부분이 다음과 같은 것을 잘못 적으신거 아닐까요?

00001 | 20110101

00002 | 20110102

00003 | 20110105

(적어주신 것에는 page가 모두 00001로 되어 있습니다)

 

만약, 위와 같은 결과를 얻고 싶으시면 서브쿼리 필요 없이 집계 함수 사용하시면 되겠습니다.

SELECT page, MIN(date) FROM [tablename] GROUP BY page;

 

박현우(lqez)님이 2011-05-12 11:07에 작성한 댓글입니다.

 헉, 댓글을 달고보니  JaCkalRedi 님께서 15초나 빠르게 답변을 달아주셨군요! ㅎㅎ

박현우(lqez)님이 2011-05-12 11:08에 작성한 댓글입니다.

 제가 더 놀랬다능...;;;

혼자 댓글 단줄 알았는데..ㅎ

JaCkalRedi님이 2011-05-12 11:11에 작성한 댓글입니다. Edit

 아 정말 쿼리문 한줄을 줄이게 되었습니다. 도움 주셔서 감사합니다 ^^

최대호(cdhkjh)님이 2011-05-12 18:14에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
29990쿼리문좀 도와주세요... [1]
박기훈
2011-05-17
7437
29989mysql 리플리케이션 질문 입니다. [3]
김성민
2011-05-12
8588
29988SELEC시 원하는 만큼만 가져올수도있나요. [2]
VQ
2011-05-12
8546
29987DB초보 쿼리문 질문입니다. [5]
최대호
2011-05-11
8411
29986MySQL 성능 테스트 툴 좀 알려주세요. [1]
량이
2011-05-06
11279
29985역인덱스를 어떻게 처리해야할까요? [2]
VQ
2011-05-06
8615
29984요즘 자주 사용하는 날짜 계산(2분전, 하루전 등등..)을 할수 있을까요? [1]
김영범
2011-05-06
10225
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2023 DSN, All rights reserved.
작업시간: 0.053초, 이곳 서비스는
	PostgreSQL v16.1로 자료를 관리합니다