sql 쿼리 관련 질문 드립니다.

sql 쿼리 관련 질문 드립니다.

QA

sql 쿼리 관련 질문 드립니다.

본문

며칠째 찾아보고 있는데요. 이렇게 저렇게 해봐도 해결이 안되서요

안되겠다 싶어 질문 남깁니다.

고수님들의 고언 부탁드립니다.

 

families 라는 테이블에 firstname, name, birth 라는 컬럼이 있습니다.
안에 만여명의 데이터가 있는데요. 누구는 김씨 성을 쓰고, 누구는 이씨 박씨를 쓰는데요.
 

김씨, 김삼순, 19801001

김씨, 김화동, 19920202

박씨, 박화자, 19781005

박씨, 박화순, 19981005

강씨

최씨

.

.

데이터는 이런식으로 1000개 정도 있다 가정하겠습니다.

그룹별로 가장 최근에 태어난 사람 이름, 또는 가장 늦게 태어난 사람 이름을 구하는건데요.

 

각성씨별 가장 최근에 태어난 사람을 구한다 가정했을 때

이런 결과를 예상하고..

김씨, 김화동, 19920202

박씨, 박화순, 19981005

 

ㄴ 쿼리는 이런식으로 작성했습니다. select * from families group by `firstname` order by `birth`

 

위처럼 두사람의 이름이 나와야 하는데 마구잡이로 섞여서 나오네요.

지금까지 테스는 아래같이 해봤습니다.

1. select * from families group by `firstname` order by `birth`

2. select * from (select * from families order by `birth`)a group by a.`firstname`

 

이 방법 말고도 birth 값에 index 를 주고 acs 로 정렬이 되게도 해봤는데요.

결과는 달라지지 않았습니다.

고수님들의 고언 부탁드립니다^^

이 질문에 댓글 쓰기 :

답변 3

답변 감사합니다.
답변 해주신 대로는 이미 해본적이 있네요. 그래도 감사합니다.

 

지금은 mysql 버젼의 문제일까 라는 생각라 생각하고 버젼 변경을 염두하고 있습니다.

 

답변을 작성하시기 전에 로그인 해주세요.
전체 123,128 | RSS
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT