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.
select service_level from sysibmadm.env_inst_info;
SERVICE_LEVEL
DB2 v11.1.4.4
CREATE TABLE test (
test_col DATE
);

INSERT INTO test (test_col) VALUES

('2024-01-15 10:20:30'),
('2024-02-21 10:20:30'),
('2024-03-10 10:20:30'),
('2024-04-05 10:20:30'),
('2024-05-18 10:20:30'),
('2024-06-25 10:20:30'),
('2024-07-04 10:20:30'),
('2024-08-11 10:20:30'),
('2024-09-20 10:20:30'),
('2024-10-03 10:20:30'),
('2024-11-26 10:20:30'),
('2024-12-17 10:20:30'),
('2025-01-01 10:20:30'),
('2025-02-21 10:20:30'),
('2025-03-10 10:20:30'),
('2025-04-05 10:20:30');


select * from test;
TEST_COL
2024-01-15
2024-02-21
2024-03-10
2024-04-05
2024-05-18
2024-06-25
2024-07-04
2024-08-11
2024-09-20
2024-10-03
2024-11-26
2024-12-17
2025-01-01
2025-02-21
2025-03-10
2025-04-05
SELECT
test_col,
(MONTH(test_col) + 8) % 12 + 1 AS new_month,
CASE
WHEN MONTH(test_col) <=3 THEN
VARCHAR(YEAR(test_col) - 1) || '-' || VARCHAR(YEAR(test_col))
ELSE VARCHAR(YEAR(test_col)) || '-' || VARCHAR(YEAR(test_col) + 1)
END AS new_year
FROM test;

TEST_COL NEW_MONTH NEW_YEAR
2024-01-15 10 2023-2024
2024-02-21 11 2023-2024
2024-03-10 12 2023-2024
2024-04-05 1 2024-2025
2024-05-18 2 2024-2025
2024-06-25 3 2024-2025
2024-07-04 4 2024-2025
2024-08-11 5 2024-2025
2024-09-20 6 2024-2025
2024-10-03 7 2024-2025
2024-11-26 8 2024-2025
2024-12-17 9 2024-2025
2025-01-01 10 2024-2025
2025-02-21 11 2024-2025
2025-03-10 12 2024-2025
2025-04-05 1 2025-2026