重新排列各种范围的数据表
我有一些失败的数据和事件。 我想根据事件的范围分组这些数据。 EG. >500 Wheel alignment, dpf muffler assy
EG. >500 Wheel alignment, dpf muffler assy
范围将在10s。 EG. >=500, 490-500, 480-490.
对不起,我没有提到,我正在使用Excel 2007做到这一点! :(((
Failures Occurences WHEEL ALIGNMENT (ADJ) 588 DPF MUFFLER ASSY (R/SERVICE/I) 557 ADJUST ALL BRAKES (ADJ) 436 V-BELT(ALTERNATOR/FAN/COMPRESSOR) (R/I) 402 BATTERY (R/I) 380 FRT BRAKE SHOE & LINING ASSY (R/I) 375 ELECTRICAL REPAIR 270 CLUTCH OVERHAUL 252 STVE & GBL SERVICE PACKAGE 247
您可以创build并填充范围表(如果需要,可以灵活地更改范围)
CREATE TABLE failure_ranges (range_start INT, range_end INT);
然后你可以使用这样的查询( MySql的一个版本)
SELECT CONCAT(r.range_start, '-', r.range_end) `range`, GROUP_CONCAT(f.failures ORDER BY f.occurences DESC) failures FROM failures f JOIN failure_ranges r ON f.occurences BETWEEN r.range_start AND r.range_end GROUP BY r.range_start, r.range_end
示例输出:
| 范围| 失败| -------------------------------------------------- ----------------- | 241-250 | STVE&GBL服务包| | 251-260 | 离合器大修| | 261-270 | 电气维修| | 371-380 | 电瓶(R / I),FRT刹车片和衬里组件(R / I)| | 401-410 | V-BELT(发电机/风扇/压缩机)(R / I)| | 431-440 | 调整所有制动器(ADJ)| | 500-999 | 车轮定位(ADJ),DPF消声器组件(R / SERVICE / I)|
这里是SQLFiddle演示( MySql )