타임스탬프를 사용한 일별 MySQL 그룹 결과
나는 아래의 질문을 받고 요일별로 그룹화된 주문의 총 주문 수와 합계를 뽑아내야 합니다.저는 타임스탬프를 이용해서 모든 것을 저장하고 있습니다.
SELECT
COUNT(id) as order_count,
SUM(price + shipping_price) as order_sum,
DAY(FROM_UNIXTIME(created)) as day
FROM `order`
WHERE '.implode(' AND ', $where).'
데이별로 그룹을 짜야 하는데 이번 주말 매출을 할 때는 오더_count를 가져가서 3개가 아니라 1개가 됩니다.요일별로 그룹화된 위의 값을 당기려면 어떻게 해야 합니까?
참고: 임프로드는 시간 주기를 정의하는 데만 사용됩니다(여기서 생성된 >= TIMESTAMP AND <= TIMESTAMP>).
갱신하다
그룹별 미포함day
Array (
[order_count] => 3
[order_sum] => 69.70
[day] => 17
)
그룹별 사용day
Array (
[order_count] => 1
[order_sum] => 24.90
[day] => 17
)
매출이 있었던 하루, 주문 수량, 매출액 합계를 반환하려면 이 쿼리가 필요합니다.퍼즐 조각 하나를 여기 어딘가에 놓쳤어요...
당신은 단지 추가하는 것을 잊어버린 것입니까?GROUP BY ...
마지막에?
SELECT
COUNT(id) as order_count,
SUM(price + shipping_price) as order_sum,
DAY(FROM_UNIXTIME(created)) as order_day
FROM `order`
WHERE '.implode(' AND ', $where).'
GROUP BY order_day
참고:
사용할수없습니다as day
당신의 주간 칼럼을 위해서는day
는 MySQL 함수입니다.다음과 같은 것을 사용합니다.order_day
.
유니콘스의
@OMG Unicon의 의견에 따라 다음을 사용할 수 있습니다.
DAY(FROM_UNIXTIME(created)) as `day`
랩만 있으면 됩니다.day
뒷걸음질 치고 있어요
간단히 다음을 사용할 수도 있습니다.
SELECT
COUNT( id ) AS order_count,
SUM( price + shipping_price ) AS order_sum
FROM `order`
GROUP BY LEFT( timestamp, 10 )
또는 심지어
GROUP BY Substrate (타임스탬프, 1, 10 )
당신은 아마도 당신과 당신 사이의 이름을 놓고 충돌하고 있을 것입니다.DAY()
(MySQL의 함수) 및day
(변수 이름).다음과 같이 충돌하지 않는 것을 사용해 본 적이 있습니까?order_day
?
언급URL : https://stackoverflow.com/questions/2670871/mysql-group-results-by-day-using-timestamp
'programing' 카테고리의 다른 글
파이썬에 pid가 주어진 프로세스가 있는지 확인하는 방법은? (0) | 2023.10.16 |
---|---|
Express에 MariaDB 연결JS 액세스 거부 암호 오류 없음 (0) | 2023.10.16 |
크롬에서 낙하 이벤트가 발생하지 않음 (0) | 2023.10.16 |
Centos yum 설치 트랜잭션 확인 오류 (0) | 2023.10.16 |
svg circle - 알려진 네이티브 속성이 아니므로 cx에 바인딩할 수 없습니다. (0) | 2023.10.16 |