今天遇到一個問題,要實現按照條件查詢sum(person)這樣的結果,但是person還是分爲person1和person2的要獲得3個值:
1.sum(person)
2.sum(person1)
3.sum(person2)
最後實現的是:2,3,1要在代碼中實現了,SQL如下:
SELECT SUM(s.count_add_scenic) AS sumsecnic,
CASE WHEN s.tourist_provice_id='340000' THEN 'shengnei'
WHEN s.tourist_provice_id<>'340000' THEN 'shengwai'
END AS 'touristfrom'
FROM tb_g_temp_scenic_realtime_flow s,
(SELECT DATE_FORMAT(NOW(),'%Y-%m-%d') AS t) t,
(SELECT NOW() AS n) n
WHERE
s.tourist_country_id='I999'
AND s.scenic_province_id='340000'
AND s.data_time>=t.t
AND s.data_time<=n.n
GROUP BY
CASE WHEN s.tourist_provice_id='340000' THEN 'shengnei'
WHEN s.tourist_provice_id<>'340000' THEN 'shengwai'
END
執行結果如下:
如果有人知道如何同時得到1,2,3,請告知,謝謝!