mysql 统计本周安装监测设备占总监测设备数的比例除以上周安装监测设备占总监测设备数的比例
时间: 2024-03-20 16:15:32 浏览: 20
可以使用以下 SQL 语句实现:
```sql
SELECT
(COUNT(CASE WHEN YEARWEEK(install_date) = YEARWEEK(NOW()) THEN 1 END) / COUNT(*)) /
(COUNT(CASE WHEN YEARWEEK(install_date) = YEARWEEK(NOW()) - 1 THEN 1 END) / COUNT(*)) AS ratio
FROM
devices;
```
其中,`devices` 表是存储监测设备信息的表,假设该表中有一个名为 `install_date` 的列用于记录设备的安装日期。
该 SQL 语句使用了 `YEARWEEK()` 函数来获取当前周和上周的年份和周数,并使用 `COUNT()` 函数统计符合条件的设备数量。最后,将本周安装设备占总设备数的比例除以上周安装设备占总设备数的比例,得到一个比例值作为结果。
相关问题
mysql, 在一周以星期一开始下统计(本周异常设备除以本周正常设备的比例)除以(上周异常设备除以上周正常设备的比例)
可以使用以下 SQL 查询语句来实现统计:
```
SELECT (SUM(CASE WHEN WEEKDAY(date) = 0 THEN abnormal_devices END) / SUM(CASE WHEN WEEKDAY(date) = 0 THEN normal_devices END)) /
(SUM(CASE WHEN WEEKDAY(date) = 6 THEN abnormal_devices END) / SUM(CASE WHEN WEEKDAY(date) = 6 THEN normal_devices END)) AS result
FROM your_table_name
WHERE date BETWEEN DATE_SUB(NOW(), INTERVAL 2 WEEK) AND NOW()
```
其中,`your_table_name` 是你的数据表名,`abnormal_devices` 是异常设备数量,`normal_devices` 是正常设备数量,`date` 是数据记录时间。这个查询语句会计算最近两周的数据,按照星期一开始下统计,并返回本周异常设备除以本周正常设备的比例除以上周异常设备除以上周正常设备的比例的结果。
mysql,设备状态表里状态大于0为异常等于0为正常, 在一周以星期一开始下统计(本周异常设备除以本周正常设备的比例)除以(上周异常设备除以上周正常设备的比例)
可以通过以下 SQL 语句来实现:
```
SELECT
(
(SELECT COUNT(*) FROM 设备状态表 WHERE DATE_FORMAT(日期, '%w') = 1 AND 状态 > 0) /
(SELECT COUNT(*) FROM 设备状态表 WHERE DATE_FORMAT(日期, '%w') = 1 AND 状态 = 0)
) /
(
(SELECT COUNT(*) FROM 设备状态表 WHERE DATE_FORMAT(日期, '%w') = 1 AND 状态 > 0 AND 日期 BETWEEN DATE_SUB(NOW(), INTERVAL 1 WEEK) AND NOW()) /
(SELECT COUNT(*) FROM 设备状态表 WHERE DATE_FORMAT(日期, '%w') = 1 AND 状态 = 0 AND 日期 BETWEEN DATE_SUB(NOW(), INTERVAL 1 WEEK) AND NOW())
) AS 周异常设备比例
```
其中 `设备状态表` 是你的设备状态表的表名,`日期` 是记录状态的日期字段名,`状态` 是设备状态的字段名。这条 SQL 语句会计算出本周异常设备除以本周正常设备的比例除以上周异常设备除以上周正常设备的比例的结果,并将结果保存在名为 `周异常设备比例` 的列中。注意,这里假设一周以星期一开始。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)