对于子字符串函数的参数1,参数数据类型datetime无效。 [英] Argument data type datetime is invalid for argument 1 of substring function.
问题描述
select前10名BLLG_END_DT,
select top 10 BLLG_END_DT,
SUBSTRING(BLLG_END_DT,1,10),
SUBSTRING(BLLG_END_DT, 1, 10),
CAST(CKRFT.BLLG_END_DT AS VARCHAR(100))AS BLLG_END_DT
CAST(CKRFT.BLLG_END_DT AS VARCHAR(100))AS BLLG_END_DT
,CKRFT.TRKR_ST_DT,CAST(CKRFT.TRKR_ST_DT AS VARCHAR (100))AS Trkr_St_Dt
,CKRFT.TRKR_ST_DT,CAST(CKRFT.TRKR_ST_DT AS VARCHAR(100))AS Trkr_St_Dt
来自DF_DENORM.FORECAST.CK_RFT_DEAL_PRD_CUST_ASSOC作为CKRFT
from DF_DENORM.FORECAST.CK_RFT_DEAL_PRD_CUST_ASSOC AS CKRFT
现有记录
2011-07-02 00:00:00.000
2011-07-02 00:00:00.000
预期记录
2011-07-02
2011-07-02
当我运行这个脚本时,我在下面的代码中出现错误
WHEN I RUN THIS SCRIPT I GET BELOW ERROR FOR SUBSTRING CODE
参数数据类型datetime对于子字符串函数的参数1无效。
Argument data type datetime is invalid for argument 1 of substring function.
推荐答案
你必须转换为varchar:
You have to convert to varchar :
SUBSTRING(CAST(BLLG_END_DT AS VARCHAR(30)) ,1,10),
或将其转换为日期:
CAST( BLLG_END_DT作为日期)
CAST(BLLG_END_DT AS DATE)
这篇关于对于子字符串函数的参数1,参数数据类型datetime无效。的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!