add batch remove batch split batch comment selection show hidden batches hide batch highlight batch
db<>fiddle
donate feedback about
By using db<>fiddle, you agree to license everything you submit by Creative Commons CC0.
CREATE TABLE t (
`d_period` VARCHAR(13) COLLATE utf8_unicode_ci NOT NULL,
`spend` INTEGER
);

INSERT INTO t
(`d_period`, `spend`)
VALUES
('Aug - Forcast', '10000'),
('Aug - Actuals', '9992'),
('Jan - Forcast', '4938'),
('Jan Actuals', '8583'),
('Feb - Budget', '9856');
SELECT @@sql_mode;
SET @@sql_mode := REPLACE(@@sql_mode, 'NO_ZERO_DATE', '');
SELECT @@sql_mode;
@@sql_mode
ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
@@sql_mode
ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
select d_period
,spend
from
(
select t.*
,dense_rank() over (order by month(str_to_date(substring(d_period,1,3), '%b')) desc) as rnk
from t
) t
where rnk = 1
d_period spend
Aug - Forcast 10000
Aug - Actuals 9992