У меня есть эта хранимая процедура:
CREATE DEFINER=`brambang`@`%` PROCEDURE `TNP_PRODUK_FrekuensiPembelianUlang`(IN paramdatefrom CHAR(19), paramdateto CHAR(19))
BEGIN
SELECT MAX(count) AS max,
MIN(count) AS min,
AVG(count) AS average,
AVG(CASE WHEN rn IN (FLOOR((@tr+1)/2), FLOOR((@tr+2)/2)) THEN count END) AS median
FROM (
SELECT count,
@rn := @rn + 1 AS rn,
@tr := @rn AS tr
FROM (
SELECT COUNT(*) AS count
FROM order_match om1
where om1.createdAt between paramdatefrom and paramdateto
and om1.order_status_id in (4, 5, 6, 8)
and EXISTS(SELECT 1 from order_match om2
where om1.createdby = om2.createdby
and om2.createdAt < paramdatefrom
and om2.order_status_id in (4, 5, 6, 8))
GROUP BY createdby
ORDER BY count
) o
CROSS JOIN (SELECT @rn := 0) init
) c;
END
, и это результат, если я вставлю параметр
+-----+-----+---------+---------+
| max | min | average | median |
+-----+-----+---------+---------+
| 24 | 1 | 1.6382 | 1.00000 |
+-----+-----+---------+---------+
Что мне добавить в мою хранимую процедуру, чтобы значение могло быть округленным, чтобы быть таким
+-----+-----+---------+---------+
| max | min | average | median |
+-----+-----+---------+---------+
| 24 | 1 | 1.64 | 1.0 |
+-----+-----+---------+---------+