feat(base): 优化设备参数值查询逻辑

- 在窗口函数排序中添加参数名称优先级排序规则
- 添加参数值为'TRUE'的过滤条件
- 调整设备状态查询的时间范围条件
- 优化三色灯机器状态参数的排序逻辑
master
zangch@mesnac.com 5 days ago
parent 1d9599f58a
commit fa8b0cfca7

@ -143,9 +143,19 @@
SELECT /*+ PARALLEL(4) */ SELECT /*+ PARALLEL(4) */
device_code, device_code,
param_name, param_name,
ROW_NUMBER() OVER (PARTITION BY device_code ORDER BY NVL(record_time, collect_time) DESC) AS rn ROW_NUMBER() OVER (
PARTITION BY device_code
ORDER BY NVL(record_time, collect_time) DESC,
DECODE(param_name,
'机台状态-三色灯机器报警', 1,
'机台状态-三色灯机器暂停', 2,
'机台状态-三色灯机器待机', 3,
'机台状态-三色灯机器运行', 4,
9) ASC
) AS rn
FROM base_device_param_val FROM base_device_param_val
WHERE param_name IN ('机台状态-三色灯机器运行', '机台状态-三色灯机器暂停', '机台状态-三色灯机器待机', '机台状态-三色灯机器报警') WHERE param_name IN ('机台状态-三色灯机器运行', '机台状态-三色灯机器暂停', '机台状态-三色灯机器待机', '机台状态-三色灯机器报警')
AND UPPER(param_value) = 'TRUE'
AND collect_time >= TRUNC(SYSDATE) AND collect_time < TRUNC(SYSDATE) + 1 AND collect_time >= TRUNC(SYSDATE) AND collect_time < TRUNC(SYSDATE) + 1
), ),
device_status AS ( device_status AS (
@ -181,6 +191,7 @@
ROW_NUMBER() OVER (PARTITION BY device_code ORDER BY NVL(record_time, collect_time) DESC) AS rn ROW_NUMBER() OVER (PARTITION BY device_code ORDER BY NVL(record_time, collect_time) DESC) AS rn
FROM base_device_param_val FROM base_device_param_val
WHERE param_name IN ('机台状态-三色灯机器运行', '机台状态-三色灯机器暂停', '机台状态-三色灯机器待机','机台状态-三色灯机器报警') WHERE param_name IN ('机台状态-三色灯机器运行', '机台状态-三色灯机器暂停', '机台状态-三色灯机器待机','机台状态-三色灯机器报警')
AND UPPER(param_value) = 'TRUE'
AND collect_time >= SYSDATE - (2/24) AND collect_time < SYSDATE AND collect_time >= SYSDATE - (2/24) AND collect_time < SYSDATE
), ),
device_status AS ( device_status AS (

Loading…
Cancel
Save