Trimming minutes based on some condition

@sauku

Something like this?

SELECT TO_TIMESTAMP(UNIX_TIMESTAMP('2022-01-10 16:10:12.142', 'YYYY-MM-DD HH24:MI:SS.FFF') - UNIX_TIMESTAMP('2022-01-10 16:10:12.142','YYYY-MM-DD HH24:MI:SS.FFF')%1800)
--2022-01-10 16:00:00.000

SELECT TO_TIMESTAMP(UNIX_TIMESTAMP('2022-01-10 16:45:12.142', 'YYYY-MM-DD HH24:MI:SS.FFF') - UNIX_TIMESTAMP('2022-01-10 16:45:12.142','YYYY-MM-DD HH24:MI:SS.FFF')%1800);
--2022-01-10 16:30:00.000

General formula is: SELECT TO_TIMESTAMP(UNIX_TIMESTAMP(your_timestamp_column, 'YYYY-MM-DD HH24:MI:SS.FFF') - UNIX_TIMESTAMP(your_timestamp_column,'YYYY-MM-DD HH24:MI:SS.FFF')%your_granularity_in_seconds)