2011-09-13 8 views
2

사람들은 등록 된 사용자 수 또는 사이트가 포럼 인 것으로 가정 한 수 (총, 오늘, 어제, 지난 주)에 대한 사이트 통계를 보통 어떻게 수집합니까? 사용자 및 메시지 테이블에서 매시간/매일/일주일에 Count()를 실행하거나 더 똑똑한 증분 접근법이 있습니까?사이트 사용자 통계 수집

답변

3

확실히, 모든 활동을 날짜 시간 소인으로 기록한 다음보고자하는 두 날짜 사이에 날짜가있는 레코드에 대해 조회합니다. 이것이 기존 프로젝트 인 경우에도 모든 데이터가 아직 준비되지 않았을 수 있습니다.

당신이 이 제작하는 경우, 그러나, 그것은 이런 식으로 작업을 수행하는 것이 일반적입니다 :

당신이 포럼에 메시지를 테이블이 있다고하자가. 그럼 당신은 바로 이런 것을에 대해 쿼리 수

CREATE TABLE forum_post 
    (
    thread_posted_to_id int, 
    user_id int, 
    message text, 
    date_posted datetime DEFAULT (getdate()) 
    ) 

CREATE TABLE users 
    (
    user_id int, 
    name text, 
    date_signed_up datetime DEFAULT (getdate()) 
    ) 

특정 사용자의 모든 게시물의 수를 얻을 :이 같은 데이터베이스에 각 게시물을 저장할 수

select count(*) from forum_post where user_id = ? 

을 또는 당신이 원하는 경우 범위 내 날짜 만 입력하십시오.

select count(*) from forum_post where user_id = ? and date_posted between ? and ? 

선택하려는 데이터로 물음표를 채우십시오.