내가 트랜잭션 로그를 저장하는 데이터베이스를 가지고, 내가 그 일 및 그룹에 대한 모든 로그를 계산하고 싶은 그들 prod_id에 따라항목과 오늘 날짜를 기준으로 그룹화하는 방법 MySQL의
MySQL의 테이블 구조 :
테이블 이름 = products
+------+---------+------------+--------+
| ID | PROD_ID | DATE | PERSON |
+------+---------+------------+--------+
| 1 | 2 | 1400137633 | 1 |
| 2 | 2 | 1400137666 | 1 |
| 3 | 3 | 1400137125 | 2 |
| 4 | 4 | 1400137563 | 1 |
| 5 | 2 | 1400137425 | 2 |
| 6 | 3 | 1400137336 | 1 |
+------+---------+------------+--------+
MYSQL 코드 :
$q = 'SELECT count(ID) as count
FROM PRODUCTS
WHERE PERSON ='.$db->qstr($person).'
AND DATE(FROM_UNIXTIME(DATE)) = DATE(NOW())';
,
그래서 주어진 날짜의 항목 수입니다. 날짜는 다른 모든 항목과 동일하므로 그러나 나는 prod_id로 항목을 그룹화하고 싶습니다, 나는 GROUP BY PROD_ID를 시도했지만 그게 내가 원하는 것을주지 못했습니다. PROD_ID
이 여러 개이고 날짜가 한 항목과 동일한 디스플레이 일 경우 그룹화하고 싶습니다.
그래서 여기에 출력 ($ Person = 1)이 있어야합니다. 2 + 2 + 2 = 1 +3 +4이므로 총계는 3이어야합니다.
제안 사항?
ur 요구 사항을 이해할 수 없습니다. – AK47
좋아, 1400137336이 오늘의 유닉스 타임 스탬프라고 가정 해 봅시다. (PROD_ID) 열에 같은 (prod_id)를 가진 여러 항목을 1로 그룹화하는 동안 나 (사용자) = 1에 할당 된 모든 항목을 계산하고 결과를 표시하고 싶습니다. 지금은 이해합니까? – user3620142