DATE_FORMAT转换成小时与int类型比较,写死和列数据有差异

【详述】date_format(date_time数据,‘H’) 与 int类型比较。写死成’2024-03-12 10:57:52’后可以正常转变成 数据类型进行比较。但是在date_time类型的列中,date_format后是string类型按照字典序进行比较。
【背景】做过哪些操作?
SELECT ‘2024-03-12 10:57:52’, DATE_FORMAT(‘2024-03-12 10:57:52’, ‘%H’) as ‘小时’, DATE_FORMAT(‘2024-03-12 10:57:52’, ‘%H’)<9 as ‘是否小于9’,
CASE
WHEN DATE_FORMAT(‘2024-03-12 10:57:52’, ‘%H’) >= 18 THEN CONCAT(DATE(‘2024-03-12 10:57:52’), ’ 18:00:00’)
WHEN DATE_FORMAT(‘2024-03-12 10:57:52’, ‘%H’) < 9 THEN CONCAT(DATE(‘2024-03-12 10:57:52’), ’ 09:00:00’)
ELSE ‘2024-03-12 10:57:52’
END b;

【业务影响】
时间函数与int类型比较影响
【StarRocks版本】3.1.8-55c4c35
【联系方式】478053935@qq.com
【附件】