Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
taosdata
TDengine
提交
4a6b3d82
TDengine
项目概览
taosdata
/
TDengine
大约 2 年 前同步成功
通知
1192
Star
22018
Fork
4786
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
1
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
TDengine
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
1
Issue
1
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
4a6b3d82
编写于
4月 20, 2022
作者:
C
cpwu
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fix cast case
上级
838aea99
变更
1
显示空白变更内容
内联
并排
Showing
1 changed file
with
425 addition
and
26 deletion
+425
-26
tests/system-test/2-query/cast.py
tests/system-test/2-query/cast.py
+425
-26
未找到文件。
tests/system-test/2-query/cast.py
浏览文件 @
4a6b3d82
import
taos
import
taos
import
sys
import
sys
from
datetime
import
datetime
,
timezone
,
timedelta
import
datetime
from
util.log
import
*
from
util.log
import
*
from
util.sql
import
*
from
util.sql
import
*
...
@@ -66,9 +66,9 @@ class TDTestCase:
...
@@ -66,9 +66,9 @@ class TDTestCase:
)
)
tdSql
.
query
(
"select c1 from ct4"
)
tdSql
.
query
(
"select c1 from ct4"
)
data_ct4
=
[
tdSql
.
getData
(
i
,
0
)
for
i
in
range
(
tdSql
.
queryRows
)]
data_ct4
_c1
=
[
tdSql
.
getData
(
i
,
0
)
for
i
in
range
(
tdSql
.
queryRows
)]
tdSql
.
query
(
"select c1 from t1"
)
tdSql
.
query
(
"select c1 from t1"
)
data_t1
=
[
tdSql
.
getData
(
i
,
0
)
for
i
in
range
(
tdSql
.
queryRows
)]
data_t1
_c1
=
[
tdSql
.
getData
(
i
,
0
)
for
i
in
range
(
tdSql
.
queryRows
)]
# tdLog.printNoPrefix("==========step1: cast int to int, expect no changes")
# tdLog.printNoPrefix("==========step1: cast int to int, expect no changes")
...
@@ -83,11 +83,11 @@ class TDTestCase:
...
@@ -83,11 +83,11 @@ class TDTestCase:
tdLog
.
printNoPrefix
(
"==========step2: cast int to bigint, expect no changes"
)
tdLog
.
printNoPrefix
(
"==========step2: cast int to bigint, expect no changes"
)
tdSql
.
query
(
"select cast(c1 as bigint) as b from ct4"
)
tdSql
.
query
(
"select cast(c1 as bigint) as b from ct4"
)
for
i
in
range
(
len
(
data_ct4
)):
for
i
in
range
(
len
(
data_ct4
_c1
)):
tdSql
.
checkData
(
i
,
0
,
data_ct4
[
i
])
tdSql
.
checkData
(
i
,
0
,
data_ct4
_c1
[
i
])
tdSql
.
query
(
"select cast(c1 as bigint) as b from t1"
)
tdSql
.
query
(
"select cast(c1 as bigint) as b from t1"
)
for
i
in
range
(
len
(
data_t1
)):
for
i
in
range
(
len
(
data_t1
_c1
)):
tdSql
.
checkData
(
i
,
0
,
data_t1
[
i
])
tdSql
.
checkData
(
i
,
0
,
data_t1
_c1
[
i
])
# tdLog.printNoPrefix("==========step3: cast int to float, expect no changes")
# tdLog.printNoPrefix("==========step3: cast int to float, expect no changes")
...
@@ -110,37 +110,436 @@ class TDTestCase:
...
@@ -110,37 +110,436 @@ class TDTestCase:
tdLog
.
printNoPrefix
(
"==========step5: cast int to binary, expect changes to str(int) "
)
tdLog
.
printNoPrefix
(
"==========step5: cast int to binary, expect changes to str(int) "
)
tdSql
.
query
(
"select cast(c1 as binary(32)) as b from ct4"
)
tdSql
.
query
(
"select cast(c1 as binary(32)) as b from ct4"
)
for
i
in
range
(
len
(
data_ct4
)):
for
i
in
range
(
len
(
data_ct4
_c1
)):
tdSql
.
checkData
(
i
,
0
,
str
(
data_ct4
[
i
])
)
tdSql
.
checkData
(
i
,
0
,
str
(
data_ct4
_c1
[
i
])
)
tdSql
.
query
(
"select cast(c1 as binary(32)) as b from t1"
)
tdSql
.
query
(
"select cast(c1 as binary(32)) as b from t1"
)
for
i
in
range
(
len
(
data_t1
)):
for
i
in
range
(
len
(
data_t1
_c1
)):
tdSql
.
checkData
(
i
,
0
,
str
(
data_t1
[
i
])
)
tdSql
.
checkData
(
i
,
0
,
str
(
data_t1
_c1
[
i
])
)
tdLog
.
printNoPrefix
(
"==========step6: cast int to nchar, expect changes to str(int) "
)
tdLog
.
printNoPrefix
(
"==========step6: cast int to nchar, expect changes to str(int) "
)
tdSql
.
query
(
"select cast(c1 as nchar(32)) as b from ct4"
)
tdSql
.
query
(
"select cast(c1 as nchar(32)) as b from ct4"
)
for
i
in
range
(
len
(
data_ct4
)):
for
i
in
range
(
len
(
data_ct4
_c1
)):
tdSql
.
checkData
(
i
,
0
,
str
(
data_ct4
[
i
])
)
tdSql
.
checkData
(
i
,
0
,
str
(
data_ct4
_c1
[
i
])
)
tdSql
.
query
(
"select cast(c1 as nchar(32)) as b from t1"
)
tdSql
.
query
(
"select cast(c1 as nchar(32)) as b from t1"
)
for
i
in
range
(
len
(
data_t1
)):
for
i
in
range
(
len
(
data_t1
_c1
)):
tdSql
.
checkData
(
i
,
0
,
str
(
data_t1
[
i
])
)
tdSql
.
checkData
(
i
,
0
,
str
(
data_t1
_c1
[
i
])
)
tdLog
.
printNoPrefix
(
"==========step7: cast int to timestamp, expect changes to timestamp "
)
tdLog
.
printNoPrefix
(
"==========step7: cast int to timestamp, expect changes to timestamp "
)
tdSql
.
query
(
"select cast(c1 as timestamp) as b from ct4"
)
tdSql
.
query
(
"select cast(c1 as timestamp) as b from ct4"
)
for
i
in
range
(
len
(
data_ct4
)):
for
i
in
range
(
len
(
data_ct4
_c1
)):
if
data_ct4
[
i
]
is
None
:
if
data_ct4
_c1
[
i
]
is
None
:
tdSql
.
checkData
(
i
,
0
,
None
)
tdSql
.
checkData
(
i
,
0
,
None
)
else
:
else
:
print
(
"=========="
)
utc_zone
=
datetime
.
timezone
.
utc
# date_data = datetime.datetime.utcfromtimestamp(data_ct4[i]/1000).strftime("%Y-%m-%d %H:%M:%S.%f")
utc_8
=
datetime
.
timezone
(
datetime
.
timedelta
(
hours
=
8
))
# date_data = datetime.datetime.utcfromtimestamp(data_ct4[i]/1000).replace(tzinfo=datetime.timezone.utcoffset)
date_init_stamp
=
datetime
.
datetime
.
utcfromtimestamp
(
data_ct4_c1
[
i
]
/
1000
)
date_data
=
datetime
.
utcfromtimestamp
(
8
/
1000
).
replace
(
tzinfo
=
timezone
.
utc
).
astimezone
(
timezone
(
timedelta
(
hours
=
8
)))
date_data
=
date_init_stamp
.
replace
(
tzinfo
=
utc_zone
).
astimezone
(
utc_8
).
strftime
(
"%Y-%m-%d %H:%M:%S.%f"
)
print
(
date_data
)
tdSql
.
checkData
(
i
,
0
,
date_data
)
tdSql
.
checkData
(
i
,
0
,
date_data
)
tdSql
.
query
(
"select cast(c1 as timestamp) as b from t1"
)
tdSql
.
query
(
"select cast(c1 as timestamp) as b from t1"
)
for
i
in
range
(
len
(
data_t1
)):
for
i
in
range
(
len
(
data_t1_c1
)):
tdSql
.
checkData
(
i
,
0
,
data_t1
[
i
])
if
data_ct4_c1
[
i
]
is
None
:
tdSql
.
checkData
(
i
,
0
,
None
)
else
:
utc_zone
=
datetime
.
timezone
.
utc
utc_8
=
datetime
.
timezone
(
datetime
.
timedelta
(
hours
=
8
))
date_init_stamp
=
datetime
.
datetime
.
utcfromtimestamp
(
data_ct4_c1
[
i
]
/
1000
)
date_data
=
date_init_stamp
.
replace
(
tzinfo
=
utc_zone
).
astimezone
(
utc_8
).
strftime
(
"%Y-%m-%d %H:%M:%S.%f"
)
tdSql
.
checkData
(
i
,
0
,
date_data
)
tdLog
.
printNoPrefix
(
"==========step8: cast bigint to bigint, expect no changes"
)
tdSql
.
query
(
"select c2 from ct4"
)
data_ct4_c2
=
[
tdSql
.
getData
(
i
,
0
)
for
i
in
range
(
tdSql
.
queryRows
)]
tdSql
.
query
(
"select c2 from t1"
)
data_t1_c2
=
[
tdSql
.
getData
(
i
,
0
)
for
i
in
range
(
tdSql
.
queryRows
)]
tdSql
.
query
(
"select cast(c2 as bigint) as b from ct4"
)
for
i
in
range
(
len
(
data_ct4_c2
)):
tdSql
.
checkData
(
i
,
0
,
data_ct4_c2
[
i
])
tdSql
.
query
(
"select cast(c2 as bigint) as b from t1"
)
for
i
in
range
(
len
(
data_t1_c2
)):
tdSql
.
checkData
(
i
,
0
,
data_t1_c2
[
i
])
tdLog
.
printNoPrefix
(
"==========step9: cast bigint to binary, expect changes to str(int) "
)
tdSql
.
query
(
"select cast(c2 as binary(32)) as b from ct4"
)
for
i
in
range
(
len
(
data_ct4_c2
)):
tdSql
.
checkData
(
i
,
0
,
str
(
data_ct4_c2
[
i
])
)
tdSql
.
query
(
"select cast(c2 as binary(32)) as b from t1"
)
for
i
in
range
(
len
(
data_t1_c2
)):
tdSql
.
checkData
(
i
,
0
,
str
(
data_t1_c2
[
i
])
)
tdLog
.
printNoPrefix
(
"==========step10: cast bigint to nchar, expect changes to str(int) "
)
tdSql
.
query
(
"select cast(c2 as nchar(32)) as b from ct4"
)
for
i
in
range
(
len
(
data_ct4_c2
)):
tdSql
.
checkData
(
i
,
0
,
str
(
data_ct4_c2
[
i
])
)
tdSql
.
query
(
"select cast(c2 as nchar(32)) as b from t1"
)
for
i
in
range
(
len
(
data_t1_c2
)):
tdSql
.
checkData
(
i
,
0
,
str
(
data_t1_c2
[
i
])
)
tdLog
.
printNoPrefix
(
"==========step11: cast bigint to timestamp, expect changes to timestamp "
)
tdSql
.
query
(
"select cast(c2 as timestamp) as b from ct4"
)
for
i
in
range
(
len
(
data_ct4_c2
)):
if
data_ct4_c2
[
i
]
is
None
:
tdSql
.
checkData
(
i
,
0
,
None
)
else
:
utc_zone
=
datetime
.
timezone
.
utc
utc_8
=
datetime
.
timezone
(
datetime
.
timedelta
(
hours
=
8
))
date_init_stamp
=
datetime
.
datetime
.
utcfromtimestamp
(
data_ct4_c2
[
i
]
/
1000
)
date_data
=
date_init_stamp
.
replace
(
tzinfo
=
utc_zone
).
astimezone
(
utc_8
).
strftime
(
"%Y-%m-%d %H:%M:%S.%f"
)
tdSql
.
checkData
(
i
,
0
,
date_data
)
tdSql
.
query
(
"select cast(c2 as timestamp) as b from t1"
)
for
i
in
range
(
len
(
data_t1_c2
)):
if
data_t1_c2
[
i
]
is
None
:
tdSql
.
checkData
(
i
,
0
,
None
)
else
:
utc_zone
=
datetime
.
timezone
.
utc
utc_8
=
datetime
.
timezone
(
datetime
.
timedelta
(
hours
=
8
))
date_init_stamp
=
datetime
.
datetime
.
utcfromtimestamp
(
data_t1_c2
[
i
]
/
1000
)
date_data
=
date_init_stamp
.
replace
(
tzinfo
=
utc_zone
).
astimezone
(
utc_8
).
strftime
(
"%Y-%m-%d %H:%M:%S.%f"
)
tdSql
.
checkData
(
i
,
0
,
date_data
)
tdLog
.
printNoPrefix
(
"==========step12: cast smallint to bigint, expect no changes"
)
tdSql
.
query
(
"select c3 from ct4"
)
data_ct4_c3
=
[
tdSql
.
getData
(
i
,
0
)
for
i
in
range
(
tdSql
.
queryRows
)]
tdSql
.
query
(
"select c3 from t1"
)
data_t1_c3
=
[
tdSql
.
getData
(
i
,
0
)
for
i
in
range
(
tdSql
.
queryRows
)]
tdSql
.
query
(
"select cast(c3 as bigint) as b from ct4"
)
for
i
in
range
(
len
(
data_ct4_c3
)):
tdSql
.
checkData
(
i
,
0
,
data_ct4_c3
[
i
])
tdSql
.
query
(
"select cast(c3 as bigint) as b from t1"
)
for
i
in
range
(
len
(
data_t1_c3
)):
tdSql
.
checkData
(
i
,
0
,
data_t1_c3
[
i
])
tdLog
.
printNoPrefix
(
"==========step13: cast smallint to binary, expect changes to str(int) "
)
tdSql
.
query
(
"select cast(c3 as binary(32)) as b from ct4"
)
for
i
in
range
(
len
(
data_ct4_c3
)):
tdSql
.
checkData
(
i
,
0
,
str
(
data_ct4_c3
[
i
])
)
tdSql
.
query
(
"select cast(c3 as binary(32)) as b from t1"
)
for
i
in
range
(
len
(
data_t1_c3
)):
tdSql
.
checkData
(
i
,
0
,
str
(
data_t1_c3
[
i
])
)
tdLog
.
printNoPrefix
(
"==========step14: cast smallint to nchar, expect changes to str(int) "
)
tdSql
.
query
(
"select cast(c3 as nchar(32)) as b from ct4"
)
for
i
in
range
(
len
(
data_ct4_c3
)):
tdSql
.
checkData
(
i
,
0
,
str
(
data_ct4_c3
[
i
])
)
tdSql
.
query
(
"select cast(c3 as nchar(32)) as b from t1"
)
for
i
in
range
(
len
(
data_t1_c3
)):
tdSql
.
checkData
(
i
,
0
,
str
(
data_t1_c3
[
i
])
)
tdLog
.
printNoPrefix
(
"==========step15: cast smallint to timestamp, expect changes to timestamp "
)
tdSql
.
query
(
"select cast(c3 as timestamp) as b from ct4"
)
for
i
in
range
(
len
(
data_ct4_c3
)):
if
data_ct4_c3
[
i
]
is
None
:
tdSql
.
checkData
(
i
,
0
,
None
)
else
:
utc_zone
=
datetime
.
timezone
.
utc
utc_8
=
datetime
.
timezone
(
datetime
.
timedelta
(
hours
=
8
))
date_init_stamp
=
datetime
.
datetime
.
utcfromtimestamp
(
data_ct4_c3
[
i
]
/
1000
)
date_data
=
date_init_stamp
.
replace
(
tzinfo
=
utc_zone
).
astimezone
(
utc_8
).
strftime
(
"%Y-%m-%d %H:%M:%S.%f"
)
tdSql
.
checkData
(
i
,
0
,
date_data
)
tdSql
.
query
(
"select cast(c3 as timestamp) as b from t1"
)
for
i
in
range
(
len
(
data_t1_c3
)):
if
data_ct4_c3
[
i
]
is
None
:
tdSql
.
checkData
(
i
,
0
,
None
)
else
:
utc_zone
=
datetime
.
timezone
.
utc
utc_8
=
datetime
.
timezone
(
datetime
.
timedelta
(
hours
=
8
))
date_init_stamp
=
datetime
.
datetime
.
utcfromtimestamp
(
data_ct4_c3
[
i
]
/
1000
)
date_data
=
date_init_stamp
.
replace
(
tzinfo
=
utc_zone
).
astimezone
(
utc_8
).
strftime
(
"%Y-%m-%d %H:%M:%S.%f"
)
tdSql
.
checkData
(
i
,
0
,
date_data
)
tdLog
.
printNoPrefix
(
"==========step16: cast smallint to bigint, expect no changes"
)
tdSql
.
query
(
"select c4 from ct4"
)
data_ct4_c4
=
[
tdSql
.
getData
(
i
,
0
)
for
i
in
range
(
tdSql
.
queryRows
)]
tdSql
.
query
(
"select c4 from t1"
)
data_t1_c4
=
[
tdSql
.
getData
(
i
,
0
)
for
i
in
range
(
tdSql
.
queryRows
)]
tdSql
.
query
(
"select cast(c4 as bigint) as b from ct4"
)
for
i
in
range
(
len
(
data_ct4_c4
)):
tdSql
.
checkData
(
i
,
0
,
data_ct4_c4
[
i
])
tdSql
.
query
(
"select cast(c4 as bigint) as b from t1"
)
for
i
in
range
(
len
(
data_t1_c4
)):
tdSql
.
checkData
(
i
,
0
,
data_t1_c4
[
i
])
tdLog
.
printNoPrefix
(
"==========step17: cast smallint to binary, expect changes to str(int) "
)
tdSql
.
query
(
"select cast(c4 as binary(32)) as b from ct4"
)
for
i
in
range
(
len
(
data_ct4_c4
)):
tdSql
.
checkData
(
i
,
0
,
str
(
data_ct4_c4
[
i
])
)
tdSql
.
query
(
"select cast(c4 as binary(32)) as b from t1"
)
for
i
in
range
(
len
(
data_t1_c4
)):
tdSql
.
checkData
(
i
,
0
,
str
(
data_t1_c4
[
i
])
)
tdLog
.
printNoPrefix
(
"==========step18: cast smallint to nchar, expect changes to str(int) "
)
tdSql
.
query
(
"select cast(c4 as nchar(32)) as b from ct4"
)
for
i
in
range
(
len
(
data_ct4_c4
)):
tdSql
.
checkData
(
i
,
0
,
str
(
data_ct4_c4
[
i
])
)
tdSql
.
query
(
"select cast(c4 as nchar(32)) as b from t1"
)
for
i
in
range
(
len
(
data_t1_c4
)):
tdSql
.
checkData
(
i
,
0
,
str
(
data_t1_c4
[
i
])
)
tdLog
.
printNoPrefix
(
"==========step19: cast smallint to timestamp, expect changes to timestamp "
)
tdSql
.
query
(
"select cast(c4 as timestamp) as b from ct4"
)
for
i
in
range
(
len
(
data_ct4_c4
)):
if
data_ct4_c4
[
i
]
is
None
:
tdSql
.
checkData
(
i
,
0
,
None
)
else
:
utc_zone
=
datetime
.
timezone
.
utc
utc_8
=
datetime
.
timezone
(
datetime
.
timedelta
(
hours
=
8
))
date_init_stamp
=
datetime
.
datetime
.
utcfromtimestamp
(
data_ct4_c4
[
i
]
/
1000
)
date_data
=
date_init_stamp
.
replace
(
tzinfo
=
utc_zone
).
astimezone
(
utc_8
).
strftime
(
"%Y-%m-%d %H:%M:%S.%f"
)
tdSql
.
checkData
(
i
,
0
,
date_data
)
tdSql
.
query
(
"select cast(c4 as timestamp) as b from t1"
)
for
i
in
range
(
len
(
data_t1_c4
)):
if
data_ct4_c4
[
i
]
is
None
:
tdSql
.
checkData
(
i
,
0
,
None
)
else
:
utc_zone
=
datetime
.
timezone
.
utc
utc_8
=
datetime
.
timezone
(
datetime
.
timedelta
(
hours
=
8
))
date_init_stamp
=
datetime
.
datetime
.
utcfromtimestamp
(
data_ct4_c4
[
i
]
/
1000
)
date_data
=
date_init_stamp
.
replace
(
tzinfo
=
utc_zone
).
astimezone
(
utc_8
).
strftime
(
"%Y-%m-%d %H:%M:%S.%f"
)
tdSql
.
checkData
(
i
,
0
,
date_data
)
tdLog
.
printNoPrefix
(
"==========step20: cast float to bigint, expect no changes"
)
tdSql
.
query
(
"select c5 from ct4"
)
data_ct4_c5
=
[
tdSql
.
getData
(
i
,
0
)
for
i
in
range
(
tdSql
.
queryRows
)]
tdSql
.
query
(
"select c5 from t1"
)
data_t1_c5
=
[
tdSql
.
getData
(
i
,
0
)
for
i
in
range
(
tdSql
.
queryRows
)]
tdSql
.
query
(
"select cast(c5 as bigint) as b from ct4"
)
for
i
in
range
(
len
(
data_ct4_c5
)):
tdSql
.
checkData
(
i
,
0
,
data_ct4_c5
[
i
])
tdSql
.
query
(
"select cast(c5 as bigint) as b from t1"
)
for
i
in
range
(
len
(
data_t1_c5
)):
tdSql
.
checkData
(
i
,
0
,
data_t1_c5
[
i
])
tdLog
.
printNoPrefix
(
"==========step21: cast float to binary, expect changes to str(int) "
)
tdSql
.
query
(
"select cast(c5 as binary(32)) as b from ct4"
)
for
i
in
range
(
len
(
data_ct4_c5
)):
tdSql
.
checkData
(
i
,
0
,
str
(
data_ct4_c5
[
i
])
)
tdSql
.
query
(
"select cast(c5 as binary(32)) as b from t1"
)
for
i
in
range
(
len
(
data_t1_c5
)):
tdSql
.
checkData
(
i
,
0
,
str
(
data_t1_c5
[
i
])
)
tdLog
.
printNoPrefix
(
"==========step22: cast float to nchar, expect changes to str(int) "
)
tdSql
.
query
(
"select cast(c5 as nchar(32)) as b from ct4"
)
for
i
in
range
(
len
(
data_ct4_c5
)):
tdSql
.
checkData
(
i
,
0
,
str
(
data_ct4_c5
[
i
])
)
tdSql
.
query
(
"select cast(c5 as nchar(32)) as b from t1"
)
for
i
in
range
(
len
(
data_t1_c5
)):
tdSql
.
checkData
(
i
,
0
,
str
(
data_t1_c5
[
i
])
)
tdLog
.
printNoPrefix
(
"==========step23: cast float to timestamp, expect changes to timestamp "
)
tdSql
.
query
(
"select cast(c5 as timestamp) as b from ct4"
)
for
i
in
range
(
len
(
data_ct4_c5
)):
if
data_ct4_c5
[
i
]
is
None
:
tdSql
.
checkData
(
i
,
0
,
None
)
else
:
utc_zone
=
datetime
.
timezone
.
utc
utc_8
=
datetime
.
timezone
(
datetime
.
timedelta
(
hours
=
8
))
date_init_stamp
=
datetime
.
datetime
.
utcfromtimestamp
(
int
(
data_ct4_c5
[
i
]
/
1000
))
date_data
=
date_init_stamp
.
replace
(
tzinfo
=
utc_zone
).
astimezone
(
utc_8
).
strftime
(
"%Y-%m-%d %H:%M:%S.%f"
)
tdSql
.
checkData
(
i
,
0
,
date_data
)
tdSql
.
query
(
"select cast(c5 as timestamp) as b from t1"
)
for
i
in
range
(
len
(
data_t1_c5
)):
if
data_t1_c5
[
i
]
is
None
:
tdSql
.
checkData
(
i
,
0
,
None
)
else
:
utc_zone
=
datetime
.
timezone
.
utc
utc_8
=
datetime
.
timezone
(
datetime
.
timedelta
(
hours
=
8
))
date_init_stamp
=
datetime
.
datetime
.
utcfromtimestamp
(
int
(
data_t1_c5
[
i
]
/
1000
))
date_data
=
date_init_stamp
.
replace
(
tzinfo
=
utc_zone
).
astimezone
(
utc_8
).
strftime
(
"%Y-%m-%d %H:%M:%S.%f"
)
tdSql
.
checkData
(
i
,
0
,
date_data
)
tdLog
.
printNoPrefix
(
"==========step24: cast double to bigint, expect no changes"
)
tdSql
.
query
(
"select c6 from ct4"
)
data_ct4_c6
=
[
tdSql
.
getData
(
i
,
0
)
for
i
in
range
(
tdSql
.
queryRows
)]
tdSql
.
query
(
"select c6 from t1"
)
data_t1_c6
=
[
tdSql
.
getData
(
i
,
0
)
for
i
in
range
(
tdSql
.
queryRows
)]
tdSql
.
query
(
"select cast(c6 as bigint) as b from ct4"
)
for
i
in
range
(
len
(
data_ct4_c6
)):
tdSql
.
checkData
(
i
,
0
,
data_ct4_c6
[
i
])
tdSql
.
query
(
"select cast(c6 as bigint) as b from t1"
)
for
i
in
range
(
len
(
data_t1_c6
)):
tdSql
.
checkData
(
i
,
0
,
data_t1_c6
[
i
])
tdLog
.
printNoPrefix
(
"==========step25: cast double to binary, expect changes to str(int) "
)
tdSql
.
query
(
"select cast(c6 as binary(32)) as b from ct4"
)
for
i
in
range
(
len
(
data_ct4_c6
)):
tdSql
.
checkData
(
i
,
0
,
str
(
data_ct4_c6
[
i
])
)
tdSql
.
query
(
"select cast(c6 as binary(32)) as b from t1"
)
for
i
in
range
(
len
(
data_t1_c6
)):
tdSql
.
checkData
(
i
,
0
,
str
(
data_t1_c6
[
i
])
)
tdLog
.
printNoPrefix
(
"==========step26: cast double to nchar, expect changes to str(int) "
)
tdSql
.
query
(
"select cast(c6 as nchar(32)) as b from ct4"
)
for
i
in
range
(
len
(
data_ct4_c6
)):
tdSql
.
checkData
(
i
,
0
,
str
(
data_ct4_c6
[
i
])
)
tdSql
.
query
(
"select cast(c6 as nchar(32)) as b from t1"
)
for
i
in
range
(
len
(
data_t1_c6
)):
tdSql
.
checkData
(
i
,
0
,
str
(
data_t1_c6
[
i
])
)
tdLog
.
printNoPrefix
(
"==========step27: cast double to timestamp, expect changes to timestamp "
)
tdSql
.
query
(
"select cast(c6 as timestamp) as b from ct4"
)
for
i
in
range
(
len
(
data_ct4_c6
)):
if
data_ct4_c6
[
i
]
is
None
:
tdSql
.
checkData
(
i
,
0
,
None
)
else
:
utc_zone
=
datetime
.
timezone
.
utc
utc_8
=
datetime
.
timezone
(
datetime
.
timedelta
(
hours
=
8
))
date_init_stamp
=
datetime
.
datetime
.
utcfromtimestamp
(
int
(
data_ct4_c6
[
i
]
/
1000
))
date_data
=
date_init_stamp
.
replace
(
tzinfo
=
utc_zone
).
astimezone
(
utc_8
).
strftime
(
"%Y-%m-%d %H:%M:%S.%f"
)
tdSql
.
checkData
(
i
,
0
,
date_data
)
tdSql
.
query
(
"select cast(c6 as timestamp) as b from t1"
)
for
i
in
range
(
len
(
data_t1_c6
)):
if
data_t1_c6
[
i
]
is
None
:
tdSql
.
checkData
(
i
,
0
,
None
)
else
:
utc_zone
=
datetime
.
timezone
.
utc
utc_8
=
datetime
.
timezone
(
datetime
.
timedelta
(
hours
=
8
))
date_init_stamp
=
datetime
.
datetime
.
utcfromtimestamp
(
int
(
data_t1_c6
[
i
]
/
1000
))
date_data
=
date_init_stamp
.
replace
(
tzinfo
=
utc_zone
).
astimezone
(
utc_8
).
strftime
(
"%Y-%m-%d %H:%M:%S.%f"
)
tdSql
.
checkData
(
i
,
0
,
date_data
)
tdLog
.
printNoPrefix
(
"==========step28: cast bool to bigint, expect no changes"
)
tdSql
.
query
(
"select c7 from ct4"
)
data_ct4_c7
=
[
tdSql
.
getData
(
i
,
0
)
for
i
in
range
(
tdSql
.
queryRows
)]
tdSql
.
query
(
"select c7 from t1"
)
data_t1_c7
=
[
tdSql
.
getData
(
i
,
0
)
for
i
in
range
(
tdSql
.
queryRows
)]
tdSql
.
query
(
"select cast(c7 as bigint) as b from ct4"
)
for
i
in
range
(
len
(
data_ct4_c7
)):
tdSql
.
checkData
(
i
,
0
,
data_ct4_c7
[
i
])
tdSql
.
query
(
"select cast(c7 as bigint) as b from t1"
)
for
i
in
range
(
len
(
data_t1_c7
)):
tdSql
.
checkData
(
i
,
0
,
data_t1_c7
[
i
])
tdLog
.
printNoPrefix
(
"==========step29: cast bool to binary, expect changes to str(int) "
)
tdSql
.
query
(
"select cast(c7 as binary(32)) as b from ct4"
)
for
i
in
range
(
len
(
data_ct4_c7
)):
tdSql
.
checkData
(
i
,
0
,
str
(
data_ct4_c7
[
i
])
)
tdSql
.
query
(
"select cast(c7 as binary(32)) as b from t1"
)
for
i
in
range
(
len
(
data_t1_c7
)):
tdSql
.
checkData
(
i
,
0
,
str
(
data_t1_c7
[
i
])
)
tdLog
.
printNoPrefix
(
"==========step30: cast bool to nchar, expect changes to str(int) "
)
tdSql
.
query
(
"select cast(c7 as nchar(32)) as b from ct4"
)
for
i
in
range
(
len
(
data_ct4_c7
)):
tdSql
.
checkData
(
i
,
0
,
str
(
data_ct4_c7
[
i
])
)
tdSql
.
query
(
"select cast(c7 as nchar(32)) as b from t1"
)
for
i
in
range
(
len
(
data_t1_c7
)):
tdSql
.
checkData
(
i
,
0
,
str
(
data_t1_c7
[
i
])
)
tdLog
.
printNoPrefix
(
"==========step31: cast bool to timestamp, expect changes to timestamp "
)
tdSql
.
query
(
"select cast(c7 as timestamp) as b from ct4"
)
for
i
in
range
(
len
(
data_ct4_c7
)):
if
data_ct4_c7
[
i
]
is
None
:
tdSql
.
checkData
(
i
,
0
,
None
)
else
:
utc_zone
=
datetime
.
timezone
.
utc
utc_8
=
datetime
.
timezone
(
datetime
.
timedelta
(
hours
=
8
))
date_init_stamp
=
datetime
.
datetime
.
utcfromtimestamp
(
int
(
data_ct4_c7
[
i
]
/
1000
))
date_data
=
date_init_stamp
.
replace
(
tzinfo
=
utc_zone
).
astimezone
(
utc_8
).
strftime
(
"%Y-%m-%d %H:%M:%S.%f"
)
tdSql
.
checkData
(
i
,
0
,
date_data
)
tdSql
.
query
(
"select cast(c7 as timestamp) as b from t1"
)
for
i
in
range
(
len
(
data_t1_c7
)):
if
data_t1_c7
[
i
]
is
None
:
tdSql
.
checkData
(
i
,
0
,
None
)
else
:
utc_zone
=
datetime
.
timezone
.
utc
utc_8
=
datetime
.
timezone
(
datetime
.
timedelta
(
hours
=
8
))
date_init_stamp
=
datetime
.
datetime
.
utcfromtimestamp
(
int
(
data_t1_c7
[
i
]
/
1000
))
date_data
=
date_init_stamp
.
replace
(
tzinfo
=
utc_zone
).
astimezone
(
utc_8
).
strftime
(
"%Y-%m-%d %H:%M:%S.%f"
)
tdSql
.
checkData
(
i
,
0
,
date_data
)
tdSql
.
query
(
"select c8 from ct4"
)
data_ct4_c8
=
[
tdSql
.
getData
(
i
,
0
)
for
i
in
range
(
tdSql
.
queryRows
)]
tdSql
.
query
(
"select c8 from t1"
)
data_t1_c8
=
[
tdSql
.
getData
(
i
,
0
)
for
i
in
range
(
tdSql
.
queryRows
)]
tdLog
.
printNoPrefix
(
"==========step32: cast binary to binary, expect no changes "
)
tdSql
.
query
(
"select cast(c8 as binary(32)) as b from ct4"
)
for
i
in
range
(
len
(
data_ct4_c8
)):
tdSql
.
checkData
(
i
,
0
,
data_ct4_c8
[
i
]
)
tdSql
.
query
(
"select cast(c8 as binary(32)) as b from t1"
)
for
i
in
range
(
len
(
data_t1_c8
)):
tdSql
.
checkData
(
i
,
0
,
data_t1_c8
[
i
]
)
tdLog
.
printNoPrefix
(
"==========step33: cast binary to binary, expect truncate "
)
tdSql
.
query
(
"select cast(c8 as binary(2)) as b from ct4"
)
for
i
in
range
(
len
(
data_ct4_c8
)):
tdSql
.
checkData
(
i
,
0
,
data_ct4_c8
[
i
][:
2
]
)
tdSql
.
query
(
"select cast(c8 as binary(2)) as b from t1"
)
for
i
in
range
(
len
(
data_t1_c8
)):
tdSql
.
checkData
(
i
,
0
,
data_t1_c8
[
i
][:
2
]
)
tdLog
.
printNoPrefix
(
"==========step34: cast binary to nchar, expect changes to str(int) "
)
tdSql
.
query
(
"select cast(c8 as nchar(32)) as b from ct4"
)
for
i
in
range
(
len
(
data_ct4_c8
)):
tdSql
.
checkData
(
i
,
0
,
data_ct4_c8
[
i
]
)
tdSql
.
query
(
"select cast(c8 as nchar(32)) as b from t1"
)
for
i
in
range
(
len
(
data_t1_c8
)):
tdSql
.
checkData
(
i
,
0
,
data_t1_c8
[
i
]
)
tdSql
.
query
(
"select c9 from ct4"
)
data_ct4_c9
=
[
tdSql
.
getData
(
i
,
0
)
for
i
in
range
(
tdSql
.
queryRows
)]
tdSql
.
query
(
"select c9 from t1"
)
data_t1_c9
=
[
tdSql
.
getData
(
i
,
0
)
for
i
in
range
(
tdSql
.
queryRows
)]
"c10 timestamp"
tdLog
.
printNoPrefix
(
"==========step35: cast nchar to nchar, expect no changes "
)
tdSql
.
query
(
"select cast(c9 as nchar(32)) as b from ct4"
)
for
i
in
range
(
len
(
data_ct4_c9
)):
tdSql
.
checkData
(
i
,
0
,
data_ct4_c9
[
i
])
tdSql
.
query
(
"select cast(c9 as nchar(32)) as b from t1"
)
for
i
in
range
(
len
(
data_t1_c9
)):
tdSql
.
checkData
(
i
,
0
,
data_t1_c9
[
i
]
)
tdLog
.
printNoPrefix
(
"==========step36: cast nchar to nchar, expect truncate "
)
tdSql
.
query
(
"select cast(c9 as nchar(2)) as b from ct4"
)
for
i
in
range
(
len
(
data_ct4_c9
)):
tdSql
.
checkData
(
i
,
0
,
data_ct4_c9
[
i
][:
2
]
)
tdSql
.
query
(
"select cast(c9 as nchar(2)) as b from t1"
)
for
i
in
range
(
len
(
data_t1_c9
)):
tdSql
.
checkData
(
i
,
0
,
data_t1_c9
[
i
][:
2
]
)
tdSql
.
query
(
"select c9 from ct4"
)
data_ct4_c10
=
[
tdSql
.
getData
(
i
,
0
)
for
i
in
range
(
tdSql
.
queryRows
)]
tdSql
.
query
(
"select c9 from t1"
)
data_t1_c10
=
[
tdSql
.
getData
(
i
,
0
)
for
i
in
range
(
tdSql
.
queryRows
)]
tdLog
.
printNoPrefix
(
"==========step37: cast timestamp to nchar, expect no changes "
)
tdSql
.
query
(
"select cast(c9 as nchar(32)) as b from ct4"
)
for
i
in
range
(
len
(
data_ct4_c10
)):
tdSql
.
checkData
(
i
,
0
,
data_ct4_c10
[
i
])
tdSql
.
query
(
"select cast(c9 as nchar(32)) as b from t1"
)
for
i
in
range
(
len
(
data_t1_c10
)):
tdSql
.
checkData
(
i
,
0
,
data_t1_c10
[
i
]
)
tdSql
.
error
(
"select cast(c1 as int) as b from ct4"
)
tdSql
.
error
(
"select cast(c1 as int) as b from ct4"
)
tdSql
.
error
(
"select cast(c1 as bool) as b from ct4"
)
tdSql
.
error
(
"select cast(c1 as bool) as b from ct4"
)
...
@@ -160,10 +559,10 @@ class TDTestCase:
...
@@ -160,10 +559,10 @@ class TDTestCase:
tdSql
.
error
(
"select cast(c7 as double) as b from ct4"
)
tdSql
.
error
(
"select cast(c7 as double) as b from ct4"
)
tdSql
.
error
(
"select cast(c8 as tinyint unsigned) as b from ct4"
)
tdSql
.
error
(
"select cast(c8 as tinyint unsigned) as b from ct4"
)
tdSql
.
error
(
"select cast(c8 as timestamp ) as b from ct4"
)
tdSql
.
query
(
"select cast(c8 as timestamp ) as b from ct4"
)
tdSql
.
query
(
"select cast(c9 as timestamp ) as b from ct4"
)
tdSql
.
error
(
"select cast(c9 as binary(64) ) as b from ct4"
)
tdSql
.
error
(
"select cast(c9 as binary(64) ) as b from ct4"
)
tdSql
.
error
(
"select cast(c9 as timestamp ) as b from ct4"
)
tdSql
.
error
(
"select cast(c10 as binary(64) ) as b from ct4"
)
tdSql
.
error
(
"select cast(c10 as binary(64) ) as b from ct4"
)
tdSql
.
error
(
"select cast(c10 as nchar(64) ) as b from ct4"
)
tdSql
.
error
(
"select cast(c10 as nchar(64) ) as b from ct4"
)
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录