从字段qlikview中提取时间和日期

时间:2019-11-19 10:04:55

标签: time transformation extraction qlikview

我有这种数据

Check_in

18/11/2019 10:32:01
18/11/2019 10:12:28
18/11/2019 09:32:57
18/11/2019 09:28:58
18/11/2019 09:28:53

现在我想从该字段中提取日期和时间

date                   time

18/11/2019   10:32:01

我在脚本中尝试了此方法,但这不起作用

Time(Fromtime)as check_in

当我尝试在Excel上格式化日期时,将显示如下所示。相同的日期会被转换,有些则不会。

image

文件

https://www.dropbox.com/s/xnxaprguz7x3fua/zooho%20dash.qvw?dl=0

https://www.dropbox.com/s/3yb2zm7plaf9o6p/excell_timein_sheet.xlsx?dl=0

1 个答案:

答案 0 :(得分:0)

这里的主要技巧是您要使用DATE#(),TIME#(),TIMESTAMP#(),因为您知道输入的格式并希望强制Qlik将其识别为日期和时间

CHECK_INS:
load *,
     date(floor(TIMESTAMP)) as DATE2,
     time(TIMESTAMP) as TIME2
;
load *,
     date#(subfield(check_in,' ',1),'DD/MM/YYYY') as DATE,
     time#(subfield(check_in,' ',2),'hh:mm:ss') as TIME,
     Timestamp#(check_in,'DD/MM/YYYY hh:mm:ss') as TIMESTAMP
;

subfield()用于根据空间位置拆分“日期和时间”部分。 另一个选择是首先对整个时间戳记TIMESTAMP#(),然后使用date()和time()函数。您需要floor()从日期中删除时间部分,否则您将看到相同日期的多个条目,但是它们只是将时间戳格式化为日期,因此仍要记住其时间部分。