개발 Q&A

제목 그룹바이 정렬
카테고리 DB
글쓴이 헛발이 작성시각 2021/04/14 10:22:39
댓글 : 5 추천 : 0 스크랩 : 0 조회수 : 7290   RSS

혼자 고민 하다가 결국 질문 하게 되었네요.

데이터가 이렇게 있습니다.

 

1    국어   50   2021-04-01

2    수학   70   2021-04-01

3    국어   80   2021-04-02

 

이런 데이터가 있습니다.

 

여기서 찾아 내고 싶은것은

1    국어   50   2021-04-01

1번데이터를 찾고 싶은데요..

 

Group by 과목 Order by 과목, 날짜 DESC

Group by 과목 Order by 과목, 날짜 ASC

 

둘다 해 봐도 

2    수학   70   2021-04-01

3    국어   80   2021-04-02

 

이렇게만 찾아 오네요...

제가 잘못한건 아니죠 ?

 

 다음글 mysql 풀아우터 조인 후에 서브쿼리 (6)
 이전글 Parse error: syntax error, une... (2)

댓글

한대승(불의회상) / 2021/04/14 10:25:46 / 추천 0

1. group by를 사용하는 이유는 뭘까요?

2. order by 과목 ASC, 날짜 DESC LIMIT 1 하면 목적 달성은 될듯

헛발이 / 2021/04/14 10:26:53 / 추천 0

사용하려는 이유는 국어가 두개 있기 때문에 

국어와 수학 두개만 찾아 내려는데 먼저 작성된 것을 찾아 내려거든요 

변종원(웅파) / 2021/04/14 11:30:58 / 추천 0

Group by 과목 Order by 날짜 (음 group by 하면 안나올듯...)

따로 처리해야 합니다.

https://blog.naver.com/zgabriel/220869834757

PureAni / 2021/04/14 12:06:30 / 추천 0

음..

여러가지 방법이 있겠는데..

where `id` in (select min(`id`) from `테이블` group by `과목`)

같은 느낌으로 쓰시면 될듯합니다.

위의 where는 과목으로 group by 한것들중에서 `id`가 낮은것들을 가져옵니다.

헛발이 / 2021/04/14 13:08:35 / 추천 0

그렇군요...

여러가지 답변 감사합니다.