我有大桌子
customer_id ; category ; quantity ;budget ; profit
15570 ; garden ; 1.000,00 ; 1.325,00 ; 59,94
17090 ; cars ; 9.600,00 ; 11.671,76 ; -409,28
10360 ; cars ; 12.110,00 ; 3.981,60 ; 961,97
10360 ; garden ; 10.150,00 ; 4.828,95 ; 872,27
16460 ; toys ; 24.000,00 ; 19.656,00 ; 991,00
18260 ; metal ; 24.000,00 ; 17.688,00 ; -1.131,52
...
和此查询查找每个类别的数量,预算,利润
SELECT customer_id,
(SUM(CASE WHEN category = 'garden' THEN budget END)) as budget1,
(SUM(CASE WHEN category = 'garden' THEN quantity END)) as quantity1,
(SUM(CASE WHEN category = 'garden' THEN profit END)) as profit1,
(SUM(CASE WHEN category = 'cars' THEN budget END)) as budget2,
(SUM(CASE WHEN category = 'cars' THEN quantity END)) as quantity2,
(SUM(CASE WHEN category = 'cars' THEN profit END)) as profit2,
(SUM(CASE WHEN category = 'toys' THEN budget END)) as budget3,
(SUM(CASE WHEN category = 'toys' THEN quantity END)) as quantity3,
(SUM(CASE WHEN category = 'toys' THEN profit END)) as profit3,
(SUM(CASE WHEN category = 'metal' THEN budget END)) as budget4,
(SUM(CASE WHEN category = 'metal' THEN quantity END)) as quantity4,
(SUM(CASE WHEN category = 'metal' THEN profit END)) as profit4
SUM(budget) as budget,
SUM(quantity) as quantity,
SUM(profit) as profit
FROM `sales` GROUP BY customer_id
是否有可能使查询更快(更高效)?
答案 0 :(得分:1)
我怀疑它对性能有多大影响,但我会将查询视为......
$scope.posAleatoire()
...并处理表示层中的任何剩余显示问题。