다음 작업; ID, UserID 및 Time, DateTime-Type 인 3 개의 열이있는 테이블이 있습니다. 지금은 다음과 같은 통계를 얻으려면 : 나는 5 개 범위에있어매일 값의 통계를 퍼지 범위로 정렬하기
:
- 아침 (오전 6시에서 오전 11시 반 사이)
- 정오 (오전 11시 30분부터 오후 2시까지)
- 오후 (오후 2시를 - 오후 6시)
- 저녁 (오후 6시부터 오후 10시까지)
- 밤 (오후 10시 -
사용자가 가지고있는 오전 6시) 예를 들어, 다음 항목 :
ID UserID Time
46 1 2011-11-17 17:51:24
47 1 2011-11-17 11:41:41
48 1 2011-11-17 07:31:20
49 1 2011-11-17 21:41:55
50 1 2011-11-17 21:58:28
99 1 2011-11-18 10:12:18
내 목표는이 다음과 같은 배열을 가져 오는 : 정말 사용자의 모든 값의 결과 집합을 반복 할 경우
Array (
['today'] => Array (
['morning'] => 1,
['noon'] => 1,
['afternoon'] => 1,
['evening'] => 2,
['night'] => 0
)
['all'] => Array (
['morning'] => 2,
['noon'] => 1,
['afternoon'] => 1,
['evening'] => 2,
['night'] => 0
)
['avg'] => Array (
['morning'] => 1.5,
['noon'] => 0.5,
['afternoon'] => 0.5,
['evening'] => 1,
['night'] => 0
)
)
글쎄, 그것은 작동 ,하지만 MySQL과 날짜 함수를 통해 더 쉬운 방법이있을 것입니다. 또한 모든 항목을 가져 가려고 시도하고 시간 만 얻고 싶으면 datetimes가 아니라도 문제가 발생합니다. php date 함수를 통해 먼저 구문 분석해야하고 시간 자체를 얻는 것은 정말 유용하지 않습니다. 왜냐하면 아마 userid 당 몇 줄의 줄을 얻을 수 있기 때문입니다. 날짜 자체는 다른 작업을 위해 테이블에 저장되어야합니다.
위대한 작품! 고마워요! –