我正在尝试在Sybase IQ中将字符串转换为日期时间。字符串具有以下格式:'20191211 11:49:00.565224 +0700'
我首先尝试使用Convert DATETIME
:以下2个查询失败:
SELECT CONVERT("DATETIME", '20191211 16:29:56.226560 +0000', 112) AS "TIME_dt"
SELECT CONVERT(DATETIME, '20191211 16:29:56.226560 +0000', 112) AS "TIME_dt"
但是,在类似查询中使用时>
SELECT CONVERT("DATETIME", "TIME_", 112) AS "TIME_dt" FROM TABLE
并且“ TIME_”列包含
'20191211 16:29:56.226560 +0000'
,然后得到结果:2019-12-11 00:00:00
,它正确地将20191211
转换为2019-12-11
接下来,我尝试使用SELECT CONVERT( DATETIMEOFFSET , '20191211 11:49:00.565224 +0700')
,它可以工作,但是当我在类似的查询中使用它时
SELECT CONVERT(DATETIMEOFFSET, "TIME_") AS "TIME_dt" FROM TABLE
我收到错误:
[Code: 21, SQL State: QFA2A] SQL Anywhere Error -1001030: Feature, Cast to Unknown TypeID (29) at line 1, is not supported. -- (dflib/df_Heap.cxx 6835)
发生了什么事?
谢谢
我正在尝试在Sybase IQ中将字符串转换为日期时间。字符串具有以下格式:'20191211 11:49:00.565224 +0700'我首先尝试使用Convert DATETIME:以下2个查询失败:SELECT ...
我看过https://www.w3schools.com/sql/func_sqlserver_convert.asp,基本上,第三个参数是可选的,在您的情况下为112
,它告诉您确切的格式,这就是为什么出现格式错误的原因,因为它缺少112
。另一个错误与如何传递变量,实际传递的内容,字符串或日期值有关。