시간별 데이터 추출 일자별 합계 구하기 0 5 1,414

by 신제트 [MySQL] [2022.08.16 13:53:19]


 

 

idx install date
1 30 1625813926
2 40 1625813955

SELECT 1 idx, 30 install, 1625813926 date

UNION ALL SELECT 2, 40, 16258139551

UNION ALL SELECT 3, 50, 1625790000

UNION ALL SELECT 4, 60, 1625820000

)

SELECT DATE_FORMAT(FROM_UNIXTIME(date), '%Y-%m-%d %H') dt

     , count(install) as cnt

  FROM t

 WHERE date >= UNIX_TIMESTAMP('2021-07-07')

   AND date <  UNIX_TIMESTAMP('2021-07-09') + 24*60*60

 GROUP BY dt

;

알려주신 바와같이 위의 쿼리로 3일간의 데이터값을 시간단위로 가져올 수 있었습니다.

합계를 구해보려고 하는데 3개의 날짜값이 한꺼번에 나오는데 일자별로 나눠서 출력이 되게끔 저쿼리에서 방법이 있을까요?

ex) 시간별로 나오되 7월 7일만 ,7월 8일만, 7월 9일만 쿼리를 3번날리는건 안되고 저 상태의쿼리(07-07~07-09)에서 방법이 있는지 싶습니다. 

 

by 마농 [2022.08.16 14:20:44]

원하는 결과표를 보여주세요.


by 신제트 [2022.08.16 14:54:04]

| dt            | cnt |
+---------------+-----+
| 2022-07-07 00 |  77 |
| 2022-07-07 01 |  50 |
| 2022-07-07 02 |  36 |
| 2022-07-07 03 |  25 |
| 2022-07-07 04 |  17 |
| 2022-07-07 05 |  18 |
| 2022-07-07 06 |  28 |
| 2022-07-07 07 |  36 |
| 2022-07-07 08 |  40 |
| 2022-07-07 09 |  34 |
| 2022-07-07 10 |  45 |
| 2022-07-07 11 |  68 |
| 2022-07-07 12 |  44 |
| 2022-07-07 13 |  80 |
| 2022-07-07 14 |  62 |
| 2022-07-07 15 |  60 |
| 2022-07-07 16 |  70 |
| 2022-07-07 17 |  83 |
| 2022-07-07 18 |  48 |
| 2022-07-07 19 |  69 |
| 2022-07-07 20 |  76 |
| 2022-07-07 21 | 108 |
| 2022-07-07 22 |  97 |
| 2022-07-07 23 |  94 |
| 2022-07-08 00 |  77 |
| 2022-07-08 01 |  46 |
| 2022-07-08 02 |  34 |
| 2022-07-08 03 |  16 |
| 2022-07-08 04 |  22 |
| 2022-07-08 05 |  16 |
| 2022-07-08 06 |  23 |
| 2022-07-08 07 |  34 |
| 2022-07-08 08 |  49 |
| 2022-07-08 09 |  66 |
| 2022-07-08 10 |  49 |
| 2022-07-08 11 |  54 |
| 2022-07-08 12 |  56 |
| 2022-07-08 13 |  81 |
| 2022-07-08 14 |  68 |
| 2022-07-08 15 |  70 |
| 2022-07-08 16 |  76 |
| 2022-07-08 17 |  61 |
| 2022-07-08 18 |  76 |
| 2022-07-08 19 |  63 |
| 2022-07-08 20 |  92 |
| 2022-07-08 21 |  96 |
| 2022-07-08 22 | 101 |
| 2022-07-08 23 |  92 |
| 2022-07-09 00 |  76 |
| 2022-07-09 01 |  57 |
| 2022-07-09 02 |  55 |
| 2022-07-09 03 |  23 |
| 2022-07-09 04 |  25 |
| 2022-07-09 05 |  28 |
| 2022-07-09 06 |  31 |
| 2022-07-09 07 |  44 |
| 2022-07-09 08 |  61 |
| 2022-07-09 09 |  74 |
| 2022-07-09 10 |  80 |
| 2022-07-09 11 |  81 |
| 2022-07-09 12 |  62 |
| 2022-07-09 13 |  78 |
| 2022-07-09 14 |  80 |
| 2022-07-09 15 | 102 |
| 2022-07-09 16 |  94 |
| 2022-07-09 17 |  89 |
| 2022-07-09 18 |  65 |
| 2022-07-09 19 | 102 |
| 2022-07-09 20 |  80 |
| 2022-07-09 21 |  89 |
| 2022-07-09 22 |  92 |
| 2022-07-09 23 |  62

 

 이렇게 값이 나올때 각 일자별로 총합을 따로 구하고싶습니다 7월 7일 = 시간별 cnt의 총합 ,7월 8일 = 시간별 cnt의 총합 ,7월 9일 = 시간별 cnt의 총합


by 마농 [2022.08.16 17:03:50]

그러니까...
지금 나오고 있는 표 말고, 원하는 결과표를 그려주세요.
말로만 설명 하시면. 어떤 걸 원하는지 명확하게 알 수 없습니다.


by 신제트 [2022.08.16 18:05:06]

아 죄송합니다.

위와 같이 데이터가 나올때

 

date cnt
2022-07-07 543
2022-07-08 729
2022-07-09 863

위의 값도 나오되 날짜별로 끊어서 cnt 값을 가져오는 방법이 있을까 궁금합니다.

질문이 미숙한점 죄송합니다


by 마농 [2022.08.16 21:36:32]

3줄 나오는게 원하는 건가요?
아니면 3줄이 추가로 나오길 원하는 걸까요?
아니면 또 다른 형태의 결과를 원하는 걸까요?
그냥 원하는 결과표를 그려주시면 되는데.
왜 자꾸 애매모호하게 글로 설명하려고 하시는지?

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입