Formatet som definieras ersätter operativsystemets format för datum och tid (regionala inställningar).
Syntax:
TimestampFormat
Exempel:
I följande exempel används 1983-12-14T13:15:30Z som tidsmarkörsdata för att visa resultaten för olika SET TimestampFormat-satser. Datumformatet som används är YYYYMMDD och tidsformatet är h:mm:ss TT. Datumformatet anges i SET DateFormat-satsen och tidsformatet anges i SET TimeFormat-satsen längst upp i dataladdningsskriptet.
Resultat
Exempel
Resultat
SET TimestampFormat='YYYYMMDD';
19831214
SET TimestampFormat='M/D/YY hh:mm:ss[.fff]';
12/14/83 13:15:30
SET TimestampFormat='DD/MM/YYYY hh:mm:ss[.fff]';
14/12/1983 13:15:30
SET TimestampFormat='DD/MM/YYYY hh:mm:ss[.fff] TT';
14/12/1983 1:15:30 PM
SET TimestampFormat='YYYY-MM-DD hh:mm:ss[.fff] TT';
1983-12-14 01:15:30
Exempel: Laddningsskript
I det första laddningsskriptet används SET TimestampFormat='DD/MM/YYYY h:mm:ss[.fff] TT'. I det andra laddningsskriptet har formatet för tidsmarkören ändrats till SET TimestampFormat='MM/DD/YYYY hh:mm:ss[.fff]'. De olika resultaten visar hur SET TimeFormat-satsen fungerar med olika tidsformat.
Tabellen nedan visar datauppsättningen som används i laddningsskripten som följer. Tabellens andra kolumn innehåller formaten för varje tidsmarkör i datauppsättningen. De första fem tidsmarkörerna följer ISO 8601-normen, men det gör inte den sjätte.
Datauppsättning
Tabellen visar de tidsdata som används och formatet för varje tidsmarkör i datauppsättningen.
transaction_timestamp
time data format
2018-08-30
YYYY-MM-DD
20180830T193614.857
YYYYMMDDhhmmss.sss
20180830T193614.857+0200
YYYYMMDDhhmmss.sss±hhmm
2018-09-16T12:30-02:00
YYYY-MM-DDhh:mm±hh:mm
2018-09-16T13:15:30Z
YYYY-MM-DDhh:mmZ
9/30/18 19:36:14
M/D/YY hh:mm:ss
Gå till Skriptredigeraren och skapa ett nytt delavsnitt. Lägg sedan till exempelskriptet och kör det. Lägg sedan till åtminstone de fält som listas i resultatkolumnen till ett ark i din app för att se resultatet.
Laddningsskript
SET FirstWeekDay=0;
SET BrokenWeeks=1;
SET ReferenceDay=0;
SET DayNames='Mon;Tue;Wed;Thu;Fri;Sat;Sun';
SET LongDayNames='Monday;Tuesday;Wednesday;Thursday;Friday;Saturday;Sunday';
SET DateFormat='YYYYMMDD';
SET TimestampFormat='DD/MM/YYYY h:mm:ss[.fff] TT';
Transactions:
Load
*,
Timestamp(transaction_timestamp, 'YYYY-MM-DD hh:mm:ss[.fff]') as LogTimestamp
;
Load * Inline [
transaction_id, transaction_timestamp, transaction_amount, transaction_quantity, discount, customer_id, size, color_code
3750, 2018-08-30, 12423.56, 23, 0,2038593, L, Red
3751, 20180830T193614.857, 5356.31, 6, 0.1, 203521, m, orange
3752, 20180830T193614.857+0200, 15.75, 1, 0.22, 5646471, S, blue
3753, 2018-09-16T12:30-02:00, 1251, 7, 0, 3036491, l, Black
3754, 2018-09-16T13:15:30Z, 21484.21, 1356, 75, 049681, xs, Red
3755, 9/30/18 19:36:14, -59.18, 2, 0.333333333333333, 2038593, M, Blue
];
Resultat
Qlik Sense-tabell som visar resultaten för TimestampFormat-tolkningsvariabeln som används i laddningsskriptet. Den sista tidsmarkören i datauppsättningen returnerar inte ett korrekt datum.
transaction_id
transaction_timestamp
LogTimeStamp
3750
2018-08-30
2018-08-30 00:00:00
3751
20180830T193614.857
2018-08-30 19:36:14
3752
20180830T193614.857+0200
2018-08-30 17:36:14
3753
2018-09-16T12:30-02:00
2018-09-16 14:30:00
3754
2018-09-16T13:15:30Z
2018-09-16 13:15:30
3755
9/30/18 19:36:14
-
Nästa laddningsskript använder samma datauppsättning. Det använder dock SET TimestampFormat='MM/DD/YYYY hh:mm:ss[.fff]' för att matcha formatet i den sjätte tidsmarkören, som inte följer ISO 8601-normen.
Gå till Skriptredigeraren och ersätt det tidigare exempelskriptet med skriptet nedan och kör det. Lägg sedan till åtminstone de fält som listas i resultatkolumnen till ett ark i din app för att se resultatet.
Laddningsskript
SET FirstWeekDay=0;
SET BrokenWeeks=1;
SET ReferenceDay=0;
SET DayNames='Mon;Tue;Wed;Thu;Fri;Sat;Sun';
SET LongDayNames='Monday;Tuesday;Wednesday;Thursday;Friday;Saturday;Sunday';
SET DateFormat='YYYYMMDD';
SET TimestampFormat='MM/DD/YYYY hh:mm:ss[.fff]';
Transactions:
Load
*,
Timestamp(transaction_timestamp, 'YYYY-MM-DD hh:mm:ss[.fff]') as LogTimestamp
;
Load * Inline [
transaction_id, transaction_timestamp, transaction_amount, transaction_quantity, discount, customer_id, size, color_code
3750, 2018-08-30, 12423.56, 23, 0,2038593, L, Red
3751, 20180830T193614.857, 5356.31, 6, 0.1, 203521, m, orange
3752, 20180830T193614.857+0200, 15.75, 1, 0.22, 5646471, S, blue
3753, 2018-09-16T12:30-02:00, 1251, 7, 0, 3036491, l, Black
3754, 2018-09-16T13:15:30Z, 21484.21, 1356, 75, 049681, xs, Red
3755, 9/30/18 19:36:14, -59.18, 2, 0.333333333333333, 2038593, M, Blue
];
Resultat
Qlik Sense-tabell som visar resultaten för TimestampFormat-tolkningsvariabeln som används i laddningsskriptet.
transaction_id
transaction_timestamp
LogTimeStamp
3750
2018-08-30
2018-08-30 00:00:00
3751
20180830T193614.857
2018-08-30 19:36:14
3752
20180830T193614.857+0200
2018-08-30 17:36:14
3753
2018-09-16T12:30-02:00
2018-09-16 14:30:00
3754
2018-09-16T13:15:30Z
2018-09-16 13:15:30
3755
9/30/18 19:36:14
2018-09-16 19:36:14
Var den här sidan till hjälp för dig?
Om du hittar några fel på denna sida eller i innehållet – ett stavfel, ett steg som saknas eller ett tekniskt fel – berätta för oss så att vi kan blir bättre!