테스트 사이트 - 개발 중인 베타 버전입니다

mysql 에서 php 로 결과값을 가져오는 법이 궁금합니다. 채택완료

초보자나요 5년 전 조회 3,525

구글링 하다보니 아래와 같이 mysql 통계 값을 가져오는 예제가 있는데요

 

 

위와 같은 테이블 구조일때

 

MySQL - 일별통계

SELECT DATE(`reg_date`) AS `date`, 
sum(`value`)
FROM test_st
GROUP BY `date`;

이런식으로 일별 통계를 낼수 있다 합니다.

이 통계를 php 문법으로 어떻게 표현하나요?

 

표현1. [yyyy-mm-dd H] [시간별 합계값]

표현2. [yyyy-mm-dd] [일별 합계값]

표현3. [yyyy-mm] [월별 합계값]

 

이런식으로 가져오고 싶습니다.

 

항상 고맙습니다!

댓글을 작성하려면 로그인이 필요합니다.

답변 2개

채택된 답변
+20 포인트
5년 전

아래는 예문일 뿐이니 참고해서 쿼리를 작성해 보세요.

-- 시간별 집계

SELECT SUBSTRING( reg_date, 1, 13 ) AS time_group, sum(`value`) AS sum_value FROM test_ts GROUP BY time_group

 

일별은 SUBSTRING( reg_date, 1, 13 ) >>> SUBSTRING( reg_date, 1, 10 )

월별은 SUBSTRING( reg_date, 1, 13 ) >>> SUBSTRING( reg_date, 1, 7 )

이해 되지죠?  그리고 저 SUBSTRING 함수는 일반적으로 쓰듯이 첫문자의 자리값이 0이 아니라 1입니다. 주의하세요.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 2개

초보자나요
5년 전
해당 구문을 php 문법으로 뽑고 싶습니다.

관련 정보를 구글링해도 모두 mysql 문법이네요.
위 구문을 php 로 뽑을수는 없나요?
팻시
5년 전
이건 PHP 로 쓸게 없는데요. 저렇게 뽑아서 뿌리기만 하면 되는데요.
php 문법으로 뽑는다는게 무슨말인지 잘 이해가 안되요.

$sql = "SELECT SUBSTRING( reg_date, 1, 13 ) AS time_group, sum(`value`) AS sum_value FROM test_ts GROUP BY time_group";

$rows = mysql_query( $sql );
while( $at_row = mysql_fetch_array( $rows , MYSQL_ASSOC) ) {
echo ( $at_row[time_group] . "<br>" );
echo ( $at_row[sum_value] . "<br>" );
}

이런걸 말하는 건가요??? 뭔말인지 질문을 모르겠어요.

댓글을 작성하려면 로그인이 필요합니다.

bbs/write_update.php파일보면 쓰는법이 있습니다.

 

가져오는법도 있습니다 board쪽 살펴보세요

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인