问题描述
我是 Qlik 的新手,我的项目要求我从格式为 HH:MM (AM/PM)
的现有时间字段创建格式为 HH:MM:SS (AM/PM)
的时间字段。
我找不到应该在数据管理器中编写的表达式来实现它。
示例:
现有时间:12:42:23 PM
所需格式:12:42 PM
解决方法
您可以使用这样的表达式:
time( time#(SomeField,'hh:mm:ss TT'),'hh:mm TT') )
我首先使用 time# 函数“告诉”Qlik SomeField
中的数据格式为 hh:mm:ss TT
,然后将结果包装在 time 函数中以进行转换/显示结果作为时间,但传递第二个(可选)参数来指定输出格式。在我们的例子中,hh:mm TT
(没有 :ss
)部分。
(如果未提供 time
函数的第二个参数,则 Qlik 将使用默认时间格式,在脚本开头的 TimeFormat
变量中指定)
示例脚本:
RawData:
Load
SomeField,time( time#(SomeField,'hh:mm TT') as TransformedField
;
Load
'12:42:23 PM' as SomeField
AutoGenerate(1)
;
结果: