Updated Dumper cycles statistics
This commit is contained in:
parent
bb0e64286e
commit
6c7e7b860a
File diff suppressed because it is too large
Load Diff
@ -18,11 +18,11 @@ labels AS (
|
||||
)
|
||||
SELECT
|
||||
l.Dumper,
|
||||
CASE WHEN l.Dumper='ULC1' THEN ROUND(c.ULC1 / t.Dump_Total * 100, 2) END AS ULC1,
|
||||
CASE WHEN l.Dumper='ULC2' THEN ROUND(c.ULC2 / t.Dump_Total * 100, 2) END AS ULC2,
|
||||
CASE WHEN l.Dumper='ULC3' THEN ROUND(c.ULC3 / t.Dump_Total * 100, 2) END AS ULC3,
|
||||
CASE WHEN l.Dumper='ULC4' THEN ROUND(c.ULC4 / t.Dump_Total * 100, 2) END AS ULC4,
|
||||
100 AS Dump_Count
|
||||
CASE WHEN l.Dumper='ULC1' THEN c.ULC1 END AS ULC1,
|
||||
CASE WHEN l.Dumper='ULC2' THEN c.ULC2 END AS ULC2,
|
||||
CASE WHEN l.Dumper='ULC3' THEN c.ULC3 END AS ULC3,
|
||||
CASE WHEN l.Dumper='ULC4' THEN c.ULC4 END AS ULC4,
|
||||
t.Dump_Total AS Dump_Count
|
||||
FROM labels l
|
||||
CROSS JOIN counts c
|
||||
CROSS JOIN totals t;
|
||||
|
||||
@ -18,7 +18,7 @@
|
||||
"cacheEnabled": false,
|
||||
"database": "MariaDB",
|
||||
"fallbackEnabled": false,
|
||||
"lastModificationSignature": "9c7eede958fa24dd74eaca00ba3838a7b23c70ac1e259ebd46b749c94df1c01f",
|
||||
"lastModificationSignature": "5b77c57b75c27228c1031823519a0979dc5f0d9fbf4d011228d2c6d259d95109",
|
||||
"permissions": [
|
||||
{
|
||||
"zone": "",
|
||||
@ -27,7 +27,7 @@
|
||||
],
|
||||
"lastModification": {
|
||||
"actor": "admin",
|
||||
"timestamp": "2025-10-18T22:42:07Z"
|
||||
"timestamp": "2025-10-19T17:25:44Z"
|
||||
},
|
||||
"parameters": [
|
||||
{
|
||||
|
||||
@ -1,16 +1,62 @@
|
||||
SELECT NOW() AS time, 1 AS name, CAST(COALESCE(SUM(ulc1 = 1), 0) AS SIGNED) AS count
|
||||
FROM dumper_cycles
|
||||
WHERE t_stamp BETWEEN :starttime AND :endtime
|
||||
UNION ALL
|
||||
SELECT NOW() + INTERVAL 1 SECOND , 2 , CAST(COALESCE(SUM(ulc2 = 1), 0) AS SIGNED)
|
||||
FROM dumper_cycles
|
||||
WHERE t_stamp BETWEEN :starttime AND :endtime
|
||||
UNION ALL
|
||||
SELECT NOW() + INTERVAL 2 SECOND , 3 , CAST(COALESCE(SUM(ulc3 = 1), 0) AS SIGNED)
|
||||
FROM dumper_cycles
|
||||
WHERE t_stamp BETWEEN :starttime AND :endtime
|
||||
UNION ALL
|
||||
SELECT NOW() + INTERVAL 3 SECOND , 4 , CAST(COALESCE(SUM(ulc4 = 1), 0) AS SIGNED)
|
||||
FROM dumper_cycles
|
||||
WHERE t_stamp BETWEEN :starttime AND :endtime
|
||||
ORDER BY name;
|
||||
/* One row per hour in [:starttime, :endtime], MariaDB-old (no CTE/recursion) */
|
||||
SELECT
|
||||
CAST(UNIX_TIMESTAMP(h.hour_ts) * 1000 AS UNSIGNED) AS time, -- epoch ms at hour start
|
||||
COALESCE(SUM(dc.ulc1 = 1), 0) AS ULC1,
|
||||
COALESCE(SUM(dc.ulc2 = 1), 0) AS ULC2,
|
||||
COALESCE(SUM(dc.ulc3 = 1), 0) AS ULC3,
|
||||
COALESCE(SUM(dc.ulc4 = 1), 0) AS ULC4
|
||||
FROM
|
||||
(
|
||||
/* Generate exactly N+1 hour buckets from floor(:starttime) to floor(:endtime) */
|
||||
SELECT sf.start_floor + INTERVAL nums.n HOUR AS hour_ts
|
||||
FROM
|
||||
(
|
||||
SELECT
|
||||
TIMESTAMP(DATE_FORMAT(:starttime, '%Y-%m-%d %H:00:00')) AS start_floor,
|
||||
TIMESTAMP(DATE_FORMAT(:endtime, '%Y-%m-%d %H:00:00')) AS end_floor
|
||||
) AS sf
|
||||
JOIN
|
||||
(
|
||||
/* extend list if your window can exceed 168 hours */
|
||||
SELECT 0 AS n UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3 UNION ALL SELECT 4 UNION ALL
|
||||
SELECT 5 UNION ALL SELECT 6 UNION ALL SELECT 7 UNION ALL SELECT 8 UNION ALL SELECT 9 UNION ALL
|
||||
SELECT 10 UNION ALL SELECT 11 UNION ALL SELECT 12 UNION ALL SELECT 13 UNION ALL SELECT 14 UNION ALL
|
||||
SELECT 15 UNION ALL SELECT 16 UNION ALL SELECT 17 UNION ALL SELECT 18 UNION ALL SELECT 19 UNION ALL
|
||||
SELECT 20 UNION ALL SELECT 21 UNION ALL SELECT 22 UNION ALL SELECT 23 UNION ALL SELECT 24 UNION ALL
|
||||
SELECT 25 UNION ALL SELECT 26 UNION ALL SELECT 27 UNION ALL SELECT 28 UNION ALL SELECT 29 UNION ALL
|
||||
SELECT 30 UNION ALL SELECT 31 UNION ALL SELECT 32 UNION ALL SELECT 33 UNION ALL SELECT 34 UNION ALL
|
||||
SELECT 35 UNION ALL SELECT 36 UNION ALL SELECT 37 UNION ALL SELECT 38 UNION ALL SELECT 39 UNION ALL
|
||||
SELECT 40 UNION ALL SELECT 41 UNION ALL SELECT 42 UNION ALL SELECT 43 UNION ALL SELECT 44 UNION ALL
|
||||
SELECT 45 UNION ALL SELECT 46 UNION ALL SELECT 47 UNION ALL SELECT 48 UNION ALL SELECT 49 UNION ALL
|
||||
SELECT 50 UNION ALL SELECT 51 UNION ALL SELECT 52 UNION ALL SELECT 53 UNION ALL SELECT 54 UNION ALL
|
||||
SELECT 55 UNION ALL SELECT 56 UNION ALL SELECT 57 UNION ALL SELECT 58 UNION ALL SELECT 59 UNION ALL
|
||||
SELECT 60 UNION ALL SELECT 61 UNION ALL SELECT 62 UNION ALL SELECT 63 UNION ALL SELECT 64 UNION ALL
|
||||
SELECT 65 UNION ALL SELECT 66 UNION ALL SELECT 67 UNION ALL SELECT 68 UNION ALL SELECT 69 UNION ALL
|
||||
SELECT 70 UNION ALL SELECT 71 UNION ALL SELECT 72 UNION ALL SELECT 73 UNION ALL SELECT 74 UNION ALL
|
||||
SELECT 75 UNION ALL SELECT 76 UNION ALL SELECT 77 UNION ALL SELECT 78 UNION ALL SELECT 79 UNION ALL
|
||||
SELECT 80 UNION ALL SELECT 81 UNION ALL SELECT 82 UNION ALL SELECT 83 UNION ALL SELECT 84 UNION ALL
|
||||
SELECT 85 UNION ALL SELECT 86 UNION ALL SELECT 87 UNION ALL SELECT 88 UNION ALL SELECT 89 UNION ALL
|
||||
SELECT 90 UNION ALL SELECT 91 UNION ALL SELECT 92 UNION ALL SELECT 93 UNION ALL SELECT 94 UNION ALL
|
||||
SELECT 95 UNION ALL SELECT 96 UNION ALL SELECT 97 UNION ALL SELECT 98 UNION ALL SELECT 99 UNION ALL
|
||||
SELECT 100 UNION ALL SELECT 101 UNION ALL SELECT 102 UNION ALL SELECT 103 UNION ALL SELECT 104 UNION ALL
|
||||
SELECT 105 UNION ALL SELECT 106 UNION ALL SELECT 107 UNION ALL SELECT 108 UNION ALL SELECT 109 UNION ALL
|
||||
SELECT 110 UNION ALL SELECT 111 UNION ALL SELECT 112 UNION ALL SELECT 113 UNION ALL SELECT 114 UNION ALL
|
||||
SELECT 115 UNION ALL SELECT 116 UNION ALL SELECT 117 UNION ALL SELECT 118 UNION ALL SELECT 119 UNION ALL
|
||||
SELECT 120 UNION ALL SELECT 121 UNION ALL SELECT 122 UNION ALL SELECT 123 UNION ALL SELECT 124 UNION ALL
|
||||
SELECT 125 UNION ALL SELECT 126 UNION ALL SELECT 127 UNION ALL SELECT 128 UNION ALL SELECT 129 UNION ALL
|
||||
SELECT 130 UNION ALL SELECT 131 UNION ALL SELECT 132 UNION ALL SELECT 133 UNION ALL SELECT 134 UNION ALL
|
||||
SELECT 135 UNION ALL SELECT 136 UNION ALL SELECT 137 UNION ALL SELECT 138 UNION ALL SELECT 139 UNION ALL
|
||||
SELECT 140 UNION ALL SELECT 141 UNION ALL SELECT 142 UNION ALL SELECT 143 UNION ALL SELECT 144 UNION ALL
|
||||
SELECT 145 UNION ALL SELECT 146 UNION ALL SELECT 147 UNION ALL SELECT 148 UNION ALL SELECT 149 UNION ALL
|
||||
SELECT 150 UNION ALL SELECT 151 UNION ALL SELECT 152 UNION ALL SELECT 153 UNION ALL SELECT 154 UNION ALL
|
||||
SELECT 155 UNION ALL SELECT 156 UNION ALL SELECT 157 UNION ALL SELECT 158 UNION ALL SELECT 159 UNION ALL
|
||||
SELECT 160 UNION ALL SELECT 161 UNION ALL SELECT 162 UNION ALL SELECT 163 UNION ALL SELECT 164 UNION ALL
|
||||
SELECT 165 UNION ALL SELECT 166 UNION ALL SELECT 167
|
||||
) AS nums
|
||||
ON nums.n <= TIMESTAMPDIFF(HOUR, sf.start_floor, sf.end_floor)
|
||||
) AS h
|
||||
LEFT JOIN dumper_cycles dc
|
||||
ON dc.t_stamp >= h.hour_ts
|
||||
AND dc.t_stamp < h.hour_ts + INTERVAL 1 HOUR
|
||||
GROUP BY h.hour_ts
|
||||
ORDER BY h.hour_ts;
|
||||
|
||||
@ -18,7 +18,7 @@
|
||||
"cacheEnabled": false,
|
||||
"database": "MariaDB",
|
||||
"fallbackEnabled": false,
|
||||
"lastModificationSignature": "4addcac1cda8fc044de4f3bb9aed74d86f9f19406b2bdce868963d49635ab266",
|
||||
"lastModificationSignature": "d454ce1a9aca40c387f2a302b05113880a32825fa474048962bb8386cc73882a",
|
||||
"permissions": [
|
||||
{
|
||||
"zone": "",
|
||||
@ -27,7 +27,7 @@
|
||||
],
|
||||
"lastModification": {
|
||||
"actor": "admin",
|
||||
"timestamp": "2025-10-18T23:43:21Z"
|
||||
"timestamp": "2025-10-19T15:58:12Z"
|
||||
},
|
||||
"parameters": [
|
||||
{
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user