Changing FLOATs to TIMEs in Teradata

Some Data Dictionary tables have time columns that are defined as FLOAT rather than TIME.
Here’s how to convert them to TIMEs,

select 
cast(
cast(
cast(TimeField as format '99:99:99.99') 
as char(11)) 
as time(6))

How it works ?
1. Float value will be adjusted to '99:99:99.99' format.
2. The adjusted value will be converted to char type.
3. The char type will be changed to time type.