database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
Oracle
Informix
Sybase
ㆍMS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
MS-SQL Q&A 7005 게시물 읽기
No. 7005
시간대별 통계 질문 입니다.
작성자
Hanzel
작성일
2016-09-02 10:35
조회수
3,799

 

Table [Sales_price]

Sales_price 테이블의 칼럼...

daily_code    varChar  일별매출번호

timestamp     datetime  매출 시간

menu_name varChar  메뉴 이름

menu_price   int            메뉴가격

pay_type        int            결제 타입  -- 1=카드 , 2=현금영수증 , 3 = 현금

 

매출이 생기면 이 테이블에 데이터가 쌓이는 형식입니다.

지금 날짜 별로는 불러올수 있는데

 

아래가 쿼리문 입니다.

 select * from

(select count(daily_code) as card_cnt ,sum(pay_price) as card_total from Sales_price where timestamp  BETWEEN '2016-09-02' AND '2016-09-02 23:59'  and pay_type=1) card,

 (select count(daily_code) as cr_cnt ,sum(pay_price) as cr_total from Sales_price where timestamp  BETWEEN '2016-09-02' AND '2016-09-02 23:59' and pay_type=2 ) cr,

(select count(daily_code) as c,           sum(pay_price) as c_total from  Sales_price where timestamp BETWEEN '2016-09-02' AND '2016-09-02 23:59' and  pay_type=3) c

 

근데 여기서 일정 시간대별을 보고 싶어요

예를 들어서  09시~12시 

13시~14시 뒤에 조건을 어떻게 두어야지 일정 시간대 별로 데이터를 뽑아 올수 있나요?

 

날짜는 한달, 일주일, 오늘 , 어제 이렇게 지정하고, 시간대는

BETWEEN 09:00 and 12:00 이런식으로

날짜별 기간동안 , 지정한 특정시간대 데이터만 뽑아와서 보고 싶은데

뒤에 조건을 어떻게 주어야 하나요?

답변 부탁드립니다.

 

 

이 글에 대한 댓글이 총 2건 있습니다.

SELECT COUNT(CASE pay_type WHEN 1 THEN daily_code END) AS card_cnt
     , SUM  (CASE pay_type WHEN 1 THEN pay_price  END) AS card_total
     , COUNT(CASE pay_type WHEN 2 THEN daily_code END) AS cr_cnt
     , SUM  (CASE pay_type WHEN 2 THEN pay_price  END) AS cr_total
     , COUNT(CASE pay_type WHEN 3 THEN daily_code END) AS c_cnt
     , SUM  (CASE pay_type WHEN 3 THEN pay_price  END) AS c_total
  FROM Sales_price
 WHERE timestamp >= CAST('2016-09-02' AS DateTime)
   AND timestamp <  CAST('2016-09-02' AS DateTime) + 1
   AND CONVERT(VARCHAR(5), timestamp, 8) BETWEEN '09:00' AND '12:00'
;

마농(manon94)님이 2016-09-02 11:39에 작성한 댓글입니다.

쿼리문 잘 작동 합니다!

마농(manon94)님 답변 감사합니다!

 

Hanzel님이 2016-09-02 11:51에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
7009mssql에서 프로시져 소스보기 질문입니다
노른자
2016-09-30
3413
7008프로시저에서 개체이름이 잘못되었다고 나옵니다. [1]
둥둥이
2016-09-22
4309
7007full-text-search 결과 이상. [2]
버거버그
2016-09-11
4935
7005시간대별 통계 질문 입니다. [2]
Hanzel
2016-09-02
3799
7004월별 가로 출력 ms-sql 쿼리 질문입니다. 내공100 [1]
김민용
2016-09-01
3770
7003IF NOT EXISTS (...) INSERT ... ELSE UPDATE ... 구문에도 트랜잭션을 써야하나요?
iruis
2016-09-01
3790
7002SQL200-> SQL2008R2 마이그래션 방법
김미애
2016-08-31
3544
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2023 DSN, All rights reserved.
작업시간: 0.048초, 이곳 서비스는
	PostgreSQL v16.1로 자료를 관리합니다