查询以显示从1月到12月每月每个用户的摘要

时间:2016-12-15 10:23:22

标签: mysql pivot-table

我试图写一个查询来显示1月到12月的每月车辆燃油消耗量,具体取决于用户选择的年份。目标是获得这样的东西。

var initialValue: Float = 19.200

let data = NSMutableData(bytes: &initialValue, length: 4)

func returnFloatValue(data: NSMutableData) -> Float {
    let bytes = [UInt8](data as Data)
    var f: Float = 0

    memcpy(&f, bytes, 4)
    return f
}

var result:Float = returnFloatValue(data: data)

print("f=\(result)")// f=19.2

我的表语法如下所示

+-------------+---------------------------------------------------------+
| Vehicle | Jan | Feb | Mar | Arp | May | Jun | Jul | Aug | Sep |...|
+-------------+---------------------------------------------------------+
| NY001   | 30  | 44  | 54  | 98  | 12  | 37  | 76  |     | 32  |...|
| NY002   | 30  | 65  | 99  |     | 12  | 85  |     | 13  | 52  |...|
| NY003   | 30  | 95  | 24  | 98  |     | 55  | 76  | 43  |     |...|
| NY004   |     | 22  | 97  |     | 12  | 28  |     |     | 12  |...|
| NY005   | 30  | 36  | 15  | 98  | 12  | 65  | 36  | 23  | 66  |...|
| NY006   |     | 76  | 34  | 98  | 12  | 75  | 16  | 93  | 97  |...|
+-------------+---------------------------------------------------------+

我如何使用mysql查询执行此操作。请帮我。我是新手。

示例数据:

CREATE TABLE `COSTING` (
  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
  `Vehicle` varchar(100) NOT NULL DEFAULT '',
  `Fueldate` datetime NOT NULL,
  `Costcenter` varchar(200) NOT NULL DEFAULT '',
  `Code` varchar(100) NOT NULL DEFAULT '',
  `Cost` int(100) NOT NULL DEFAULT '0',
  `FuelLitters` varchar(100) NOT NULL DEFAULT '',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=24 DEFAULT CHARSET=latin1;

1 个答案:

答案 0 :(得分:-1)

修改

影子在这里发表评论后,另一个没有子查询的解决方案:

declare var qq:any;

有关说明:您的表中没有列,因此您必须动态计算才能获得结果。对于每个月,我们创建一个案例,在选择时只获取月份中的数据。最后通过车辆将其分组允许我们通过车辆来计算总和。