Here is my query to run find the grand totals.
I am just confusing here. Please let me know.
SELECT
CASE
WHEN SUBSTRING(FL.TRAN,1,2)='02' THEN 'TOTAL APPLES:'
WHEN SUBSTRING(FL.TRAN,1,2)='01' THEN 'TOTAL BANANAS:'
WHEN SUBSTRING(FL.TRAN,1,2)='40' THEN 'TOTAL ORANGES:'
WHEN SUBSTRING(FL.TRAN,1,2)='31' THEN 'TOTAL GRAPES:'
END TYPE,
COUNT(FR.AMT) COUNT,
ISNULL(SUM(FR.AMT),0) AMOUNT
FROM
MYDB.FIN_FRUITLIST201706 AS FL
JOIN
MYDB.FIN_FRUITRATE201706 AS FR ON FL.TSTAMP_TRANS = FR.TSTAMP_TRANS
AND FL.UNIQUENESS_KEY = FR.UNIQUENESS_KEY
WHERE
FL.TSTAMP_TRANS LIKE'201706%'
AND SUBSTRING(FL.TRAN, 1, 2) IN ('02', '01', '40', '31')
GROUP BY
CASE
WHEN SUBSTRING(FL.TRAN,1,2)='02' THEN 'TOTAL APPLES:'
WHEN SUBSTRING(FL.TRAN,1,2)='01' THEN 'TOTAL BANANAS:'
WHEN SUBSTRING(FL.TRAN,1,2)='40' THEN 'TOTAL ORANGES:'
WHEN SUBSTRING(FL.TRAN,1,2)='31' THEN 'TOTAL GRAPES:'
END
UNION ALL
SELECT
'GRAND TOTALS:' TYPE,
COUNT(FR.AMT) COUNT,
ISNULL(SUM(FR.AMT),0) AMOUNT
FROM
MYDB.FIN_FRUITLIST201706 AS FL
JOIN
MYDB.FIN_FRUITRATE201706 AS FR ON FL.TSTAMP_TRANS = FR.TSTAMP_TRANS
AND FL.UNIQUENESS_KEY = FR.UNIQUENESS_KEY
WHERE
FL.TSTAMP_TRANS LIKE'201706%'
AND SUBSTRING(FL.TRAN, 1, 2) IN ('02', '01', '40', '31');
Here is a screenshot of the output:
If the totals are not having any value just want display as zero here.
Just want to put zero if no apples in table.
- TOTAL APPLES: 0 0
- TOTAL BANANAS: 3 6924
- TOTAL ORANGES: 0 0
- TOTAL GRAPES: 0 0
i am just confusing here. Please let me know.