在 Cognos Report Studio 中将数据类型为整数的列转换为日期
Convert a column that has a data type of integer into date in Cognos report studio
我有一列是这样的,数据类型是整型。我从 AS400 服务器获取数据,这就是它使用整数数据类型的原因。日期格式表示为 YYYYMMDD
在 report studio 中,我创建了一个数据项,可将此整数列转换为日期时间。但是失败了。
我尝试了很多不同的方法,但其中 none 有效。
cast([WCPDOD], 'YYYYMMDD')
cast([WCPDOD], 日期)
UDA-SQL-0219 函数 "to_date" 正在用于本地处理,但是
不可用作内置函数,或者至少其参数之一不是 supported.RSV-SRV-0042
cast([WCPDOD], YYYY-MM-DD)
cast([WCPDOD], datetime)
cast_timestamp([WCPDOD], 日期时间)
cast_timestamp([WCPDOD], 日期)
cast_integer([WCPDOD], 日期)
有人可以帮我解决这个问题吗?我的目标是至少让这个 20150729 进入这个 07/29/2015
在SQL服务器中,您可以将整数字段转换为varchar,然后转换为日期,然后使用日期样式101
实现您想要的格式:
DECLARE @datevalue int = '20150729';
SELECT convert(varchar(10),cast(cast(@datevalue AS varchar(10)) as date), 101);
首先,将您的 10 位整数转换为字符串:
数据项2
cast([Data Item1],varchar(10))
接下来,使用子字符串提取日期组件并构建日期字符串:
数据项3
substring([Data Item2],1,4) + '-' + substring([Data Item2],5,2) + '-' + substring([Data Item2],7,2)
最后,将结果字符串转换为日期格式:
数据项4
cast([Data Item3],date)
当然,这一切都可以在一个表达式中完成,但为了清楚起见,我在这里将其分解。
我有一列是这样的,数据类型是整型。我从 AS400 服务器获取数据,这就是它使用整数数据类型的原因。日期格式表示为 YYYYMMDD
在 report studio 中,我创建了一个数据项,可将此整数列转换为日期时间。但是失败了。
我尝试了很多不同的方法,但其中 none 有效。
cast([WCPDOD], 'YYYYMMDD')
cast([WCPDOD], 日期) UDA-SQL-0219 函数 "to_date" 正在用于本地处理,但是 不可用作内置函数,或者至少其参数之一不是 supported.RSV-SRV-0042
cast([WCPDOD], YYYY-MM-DD)
cast([WCPDOD], datetime)
cast_timestamp([WCPDOD], 日期时间)
cast_timestamp([WCPDOD], 日期)
cast_integer([WCPDOD], 日期)
有人可以帮我解决这个问题吗?我的目标是至少让这个 20150729 进入这个 07/29/2015
在SQL服务器中,您可以将整数字段转换为varchar,然后转换为日期,然后使用日期样式101
实现您想要的格式:
DECLARE @datevalue int = '20150729';
SELECT convert(varchar(10),cast(cast(@datevalue AS varchar(10)) as date), 101);
首先,将您的 10 位整数转换为字符串:
数据项2
cast([Data Item1],varchar(10))
接下来,使用子字符串提取日期组件并构建日期字符串:
数据项3
substring([Data Item2],1,4) + '-' + substring([Data Item2],5,2) + '-' + substring([Data Item2],7,2)
最后,将结果字符串转换为日期格式:
数据项4
cast([Data Item3],date)
当然,这一切都可以在一个表达式中完成,但为了清楚起见,我在这里将其分解。