我有以下查询。
SELECT if(branch='snj' or branch='nnj', 'nj', branch) as 'Branch',
WEEK(srv_date,1) as 'Week No.',
srv_date as 'Srv Date',
(SUM(revenue_var)+sum(revenue)) as 'Proj Rev',
sum(revenue) as 'Actual Rev',
sum(revenue_var) as 'Var Rev',
(SUM(stops)+sum(stops_var)) as 'Proj Stops',
sum(stops) as 'Actual Stops',
sum(stops_var) as 'Var Stops'
FROM `route_history`
GROUP BY srv_date, Branch
ORDER BY srv_date, Branch
结果和预期的一样 除了Branch是'nj'的时候。当它是'nj'时,这两条记录就会显示在两行中,并有各自的结果,而不是加起来显示在一行中。
感谢任何帮助
感谢Sami Kuhmonen,解决方案如下。
SELECT if(branch='snj' or branch='nnj', 'nj', branch) as 'Branch',
WEEK(srv_date,1) as 'Week No.',
srv_date as 'Srv Date',
(SUM(revenue_var)+sum(revenue)) as 'Proj Rev',
sum(revenue) as 'Actual Rev',
sum(revenue_var) as 'Var Rev',
(SUM(stops)+sum(stops_var)) as 'Proj Stops',
sum(stops) as 'Actual Stops',
sum(stops_var) as 'Var Stops'
FROM `route_history`
GROUP BY srv_date, if(branch='snj' or branch='nnj', 'nj', branch)
ORDER BY srv_date, Branch