Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/65.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在mysql中计算这3个字段? 案例 当EPro02.StartReportID=101且EventProvider02.StartVoltage=0时,则“电源断开” 当EventProvider02.StartSetTelliteCount_Mysql - Fatal编程技术网

如何在mysql中计算这3个字段? 案例 当EPro02.StartReportID=101且EventProvider02.StartVoltage=0时,则“电源断开” 当EventProvider02.StartSetTelliteCount

如何在mysql中计算这3个字段? 案例 当EPro02.StartReportID=101且EventProvider02.StartVoltage=0时,则“电源断开” 当EventProvider02.StartSetTelliteCount,mysql,Mysql,使用整个案例…使用count()和分组结束 CASE WHEN EPro02.StartReportID = 101 AND EventProvider02.StartVoltage = 0 THEN 'Power Supply Disconnected' WHEN EventProvider02.StartSatelliteCount < 9 OR EventProvider02.StartGSMSignalLevel < 20 OR EventProvider02.St

使用整个
案例…使用
count()和
分组结束

CASE    
WHEN EPro02.StartReportID = 101 AND EventProvider02.StartVoltage = 0 THEN 'Power Supply Disconnected'

WHEN EventProvider02.StartSatelliteCount < 9 OR EventProvider02.StartGSMSignalLevel < 20 OR EventProvider02.StartGSMStatus != 9 THEN 'Network Outage'

WHEN EventProvider02.StartReportID = 13 THEN 'GSM Jamming'

END AS Reason
选择
案例
当EPro02.StartReportID=101且EventProvider02.StartVoltage=0时,则“电源断开”
当EventProvider02.StartSetTelliteCount<9或EventProvider02.StartGSMSignalLevel<20或EventProvider02.StartGSMStatus!=9然后是“网络中断”
当EventProvider02.StartReportID=13时,则为“GSM干扰”
作为理性的终结,
计数(大小写)
当EPro02.StartReportID=101且EventProvider02.StartVoltage=0时,则“电源断开”
当EventProvider02.StartSetTelliteCount<9或EventProvider02.StartGSMSignalLevel<20或EventProvider02.StartGSMStatus!=9时,则“网络中断”
当EventProvider02.StartReportID=13时,则为“GSM干扰”
结束)作为理由
从你的桌子上,加入这里
分组
当EPro02.StartReportID=101且EventProvider02.StartVoltage=0时,则“电源断开”
当EventProvider02.StartSetTelliteCount<9或EventProvider02.StartGSMSignalLevel<20或EventProvider02.StartGSMStatus!=9然后是“网络中断”
当EventProvider02.StartReportID=13时,则为“GSM干扰”
终止

您能更清楚地阐述您的问题吗?我想分别计算“电源断开”、“GSM干扰”和“网络中断”的次数。
SELECT 
CASE    
WHEN EPro02.StartReportID = 101 AND EventProvider02.StartVoltage = 0 THEN 'Power Supply Disconnected'
WHEN EventProvider02.StartSatelliteCount < 9 OR EventProvider02.StartGSMSignalLevel < 20 OR EventProvider02.StartGSMStatus != 9 THEN 'Network Outage'
WHEN EventProvider02.StartReportID = 13 THEN 'GSM Jamming'
END AS Reason, 
count(CASE    
WHEN EPro02.StartReportID = 101 AND EventProvider02.StartVoltage = 0 THEN 'Power Supply Disconnected'
WHEN EventProvider02.StartSatelliteCount < 9 OR EventProvider02.StartGSMSignalLevel < 20 OR EventProvider02.StartGSMStatus != 9 THEN 'Network Outage'
WHEN EventProvider02.StartReportID = 13 THEN 'GSM Jamming'
END) as Reason_count
FROM your_table_join_here
GROUP BY CASE    
WHEN EPro02.StartReportID = 101 AND EventProvider02.StartVoltage = 0 THEN 'Power Supply Disconnected'
WHEN EventProvider02.StartSatelliteCount < 9 OR EventProvider02.StartGSMSignalLevel < 20 OR EventProvider02.StartGSMStatus != 9 THEN 'Network Outage'
WHEN EventProvider02.StartReportID = 13 THEN 'GSM Jamming'
END