https://www.youtube.com/watch?v=0dCqt4jpMCs
Similar to: - Swap consecutive seat ids
CREATE TABLE orders (
order_id INT PRIMARY KEY,
item VARCHAR(255) NOT NULL
);
INSERT INTO orders (order_id, item) VALUES
(1, 'Chow Mein'),
(2, 'Pizza'),
(3, 'Veg Nuggets'),
(4, 'Paneer Butter Masala'),
(5, 'Spring Rolls'),
(6, 'Veg Burger'),
(7, 'Paneer Tikka');
select order_id as corrected_order_id,
CASE WHEN
order_id = (select max(order_id) from orders) AND order_id %2 != 0
THEN item
WHEN order_id%2 = 0
THEN lag(item,1) OVER (order by order_id)
ELSE lead(item,1) OVER (order by order_id)
END AS item
FROM orders