postgresql如何计算时间差

问题遇到的现象和发生背景

label charttime intime
hb 20211001 20211002
hb 20211004 20211002
hb 20211005 20211002
hb 20211006 20211002
刚刚接触sql,用postgresql提取数据 遇到 过问题。
我想达到的目的是,提取距离intime最近的一次hb检查结果。
我的思路是:
1、计算intime-charttime的绝对值
2、取最小绝对值
不知道各位有没有更加好的思路或代码赐教一下。

问题相关代码,请勿粘贴截图
运行结果及报错内容
我的解答思路和尝试过的方法
我想要达到的结果
select date_part('day','2018-01-31 15:49:15'::timestamp-'2018-01-10 10:12:15'::timestamp)
---------------------
21

https://www.jianshu.com/p/dce269262793