데이터베이스 개발자 질문과 답변 게시판
데이터베이스 개발/운영 관련 질문과 답변을 올리는 게시판입니다. 궁금하신 내용을 이곳에서 문의하시면 SQLER 분들의 답변을 받으실 수 있습니다. 문의를 하실때에는 최근 작업하신 특이 사항이나, 장애 발생 전 상황을 상세히 올려 주시면 답글을 적어주시는 SQLER분들의 답변이 더 정확할 수 있으니 도움 되시길 바랍니다. 쿼리 문의일 경우, 실제 문제가 재현되는 테이블생성, 샘플데이터 생성 쿼리를 함께 올려 주시면 더 빠르고 정확한 쿼리 문의 응답이 가능합니다.
SELECT M_IDX, ISNULL(MEAL_CNT, 0) MEAL_CNT, ISNULL(MEAL_PRICE, 0) MEAL_PRICE
FROM TB_CJFMSSC01
WHERE BIZ_CD = 2
AND SUB_CD = 2
AND MEAL_GB = '10004'
AND MEAL_DT = '2014-04-01'
이렇게 쿼리가 있는데 MEAL_CNT 이건 수량이고 MEAL_DT 이건 날짜인데 4월1일부터 4월 말까지 해서
MEAL_CNT 이것의 총합 수량(sum?) 을 구해야합니다. MEAL_PRICE 이건 금액인데 금액도 총 합을 구해야 하구요
4월1일부터 말까지인데 쿼리로 어떻게 하나요ㅠㅠ
Comment 1
-
이스트럭(강동운)
2014.04.22 17:29
안녕하세요~!
아래 쿼리를 수행해보진 않았습니다만... 참고하시기 바랍니다 ~~
감사합니다~!
MEAL_DT 타입이 문자라면..
SELECT
SUBSTRING(MEAL_DT,1,7)
, SUM(MEAL_CNT) AS TOTAL_MEAL_CNT
, SUM(MEAL_PRICE) AS TOTAL_MEAL_PRICE
FROM TB_CJFMSSC01
WHERE BIZ_CD = 2
AND SUB_CD = 2
AND MEAL_GB = '10004'
AND MEAL_DT LIKE '2014-04%'
GROUP BY SUBSTRING(MEAL_DT,1,7)
MEAL_DT 타입이 날짜 타입이라면..
SELECT
CONVERT(CHAR(7), MEAL_DT, 120)
, SUM(MEAL_CNT) AS TOTAL_MEAL_CNT
, SUM(MEAL_PRICE) AS TOTAL_MEAL_PRICE
FROM TB_CJFMSSC01
WHERE BIZ_CD = 2
AND SUB_CD = 2
AND MEAL_GB = '10004'
AND MEAL_DT >= '2014-04-01' AND MEAL_DT < '2014-05-01'
GROUP BY CONVERT(CHAR(7), MEAL_DT, 120)