중복질문 mysql

중복질문 mysql

QA

중복질문 mysql

답변 1

본문

제가 하고자 하는것은 

출석체크 테이블에 저번달 기준으로 특정 회원의 출석일수를 체크하려고 하는데,

(출첵을 2개 3개 되는게 잇어서 ㅠ)

regDt가 같은날에 몇개가 등록되든 1개로 하려고 하는데,


sql문을 

SELECT count(*) as cnt FROM (SELECT COUNT(regDt) AS count FROM g5_attention where memNo='11962' and contents = '출석체크 참여'  and regDt BETWEEN '2022-05-01 00:00:00' and '2022-05-31 23:59:59' GROUP BY regDt HAVING (count >= 1) ) AS x

요렇게 햇는데,
32개가 찍히더라고여 ㅠ

그래서 다른식으로 조회를 해봣더니
SELECT regDt, COUNT(regDt) as cnt FROM g5_attention where memNo='11962' and contents = '출석체크 참여' and regDt BETWEEN '2022-05-01 00:00:00' and '2022-05-31 23:59:59' GROUP BY regDt HAVING COUNT(regDt) >= 1


보시면 18일 1개 나와야되는데 2개가 나오는데 ㅠ 어떻게 해야되나요?ㅠ

1794296171_1654216287.1246.png

이 질문에 댓글 쓰기 :

답변 1

group by로 묶으실때 그냥 regDt 그대로 묶으셔서 초단위까지 다른걸로 다 묶이네요. 날짜 단위로 묶으셔야 하나로 카운팅 됩니다. 

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
  • 질문이 없습니다.
전체 0
© SIRSOFT
현재 페이지 제일 처음으로