请问SQL中 tochar cast todate的区别是什么?感觉作用都一样耶 哪位能帮忙解释下
to_char:数值、日期 转 特定格式的字符串
to_date:字符串 转 日期
cast:任意类型 转 任意类型
不知道你用的是什么数据库,不同的数据库这几个函数有一点点区别,下面以oracle为例
to_date,将字符串,根据指定的格式转换成日期,比如
to_date('20220329174000','yyyymmddhh24miss'),
to_date('2022-03-04','yyyy-mm-dd'),
to_date('03-04-2022','mm-dd-yyyy'),
to_date('04-03-2022','dd-mm-yyyy')
cast,将某种类型转换成某种类型,和上面相比,这就很明显了,在某些情况下,当你不指定格式的时候,它是不知道该如何进行转换的,比如'03-04-2022' 究竟是3月4号还是4月3号呢?当然,cast其实也可以指定格式,但用起来比to_date 和to_char要麻烦一点
官方文档: