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 28145 게시물 읽기
No. 28145
이런 테이블 구조에서 시간대별 통계 구하기
작성자
푸르미
작성일
2009-04-07 10:46ⓒ
2009-04-07 16:05ⓜ
조회수
9,401

안녕하세요?


입실, 퇴실을 기록한 테이블이 있습니다.

그런데 시간대별, 날짜별 통계값을 뽑고 싶습니다.


중요한 테이블 구조는

idx, idNo, in, out

이렇게 되어있습니다.

idx-auto

idNo- int(예1234)

in-datetime(형식:2009-04-04 00:00:01)

out-datetiime(형식:2009-04-04 00:00:01)

어플에서는 입실시 idx, idNo, in 을 추가합니다.

퇴실시 idNo를 찾아서 out 을 업데이트 합니다.


그런데 시간별 일별 통계를 보고 싶어 합니다.

입실 기준으로 하루 24시간 입실/퇴실 통계를 같이 볼려고 하는데

잘 모르겠습니다. 


예를 들어 입실, 시간대별 통계는 이런식으로 퇴실 시간대별 통계는 in대신 out을 넣으면 되는데


select hour(in) as TimeZone, count(*) from inout

where (in >= '2009-04-05 00:00:00' AND in < '2009-04-06 00:00:00' )

group by hour(in)



보고싶은 형태는 

시간대   입실 | 퇴실

0-1         5    | 2

1-1         5    | 2

2-1         5    | 2

3-4         0    | 1

...

12-13      5    | 2

14-15      5    | 2

----------------

토탈      123   |100


이런식으로  보고 싶다고 하는데요...이런 테이블 구조로는 어떻게 쿼리를 만들어야 한는지요?

없는시간데는 0으로 표시하라고 하는데...이건또 어떻게 해야 하는지 ?

임시테이블을 만들어서 해야 하나요?


딱히 다른것은 모르겠는데

혹시 좋은 방법 있으면 알려주시면 감사하겠습니다.


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

0 ~ 23 까지 숫자가 들어있는 테이블을 하나 만드시고

그것과 해당 테이블을 조인하시면 되겠네요

물론 통계를 미리 만드신후 조인하시는게 좋겠져

이경환(babocom)님이 2009-04-08 02:44에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
28148mysql 상품평균가격이 50프로 보다 비싼 상품의 이름과 가격을 추출하라는데 도저히..;; 고수님들 도와주십쇼 [1]
조규형
2009-04-07
13745
28147[질문] 리눅스 mysql에서 로컬만 접속이 가능하도록 되어 있습니다. [2]
장정호
2009-04-07
5925
28146[질문]있는지 없는지 체크해서 추가하기 [1]
민현호
2009-04-07
5710
28145이런 테이블 구조에서 시간대별 통계 구하기 [1]
푸르미
2009-04-07
9401
28144com.mysql.jdbc.CommunicationsException 오류에 대해 아시는 분 계신지요?
김승동
2009-04-07
6839
28143제가한 정규화가 맞나요?? 부탁드립니다
박민범
2009-04-07
5520
28142mysqladmin -u -p processlist 로 확인해보면 50개 정도 떠 있는데.... [3]
김승동
2009-04-07
5912
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.020초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다