# Timestamp# - 脚本和图表功能

Timestamp#() 用于使用数据加载脚本或操作系统（如果不提供格式字符串）中设置的时间戳格式，计算表达式的日期和时间值。

语法：

timestamp#(text[, format])

返回数据类型： 双

参数

| 参数 | 描述 |
| --- | --- |
| text | 可以计算文本字符串值。 |
| format | 描述应用于解释文本字符串的格式的字符串。如果省略，则使用操作系统中设置的缩写日期格式、时间格式和小数位分隔符。ISO 8601 支持时间戳。<br><br>`Timestamp#` 功能支持多种格式选项，可用于不同的时间结构，例如：<br><br>`DD/MM/YYYY`：只关注日期（例如：`15/11/2024`）。<br><br>`YYYY-MM-DD hh:mm:ss`：显示完整的时间戳（例如：`2024-11-15 13:30:45`）。<br><br>`​MMM DD, YYYY`：显示月份和年份的简写（例如：`Nov 15, 2024`）。<br><br>`hh:mm:ss TT` ：只显示 12 小时格式的时间（例如：`01:30:45 PM`）<br><br>`​HH:mm:ss`：以 24 小时格式显示时间（例如：`13:30:45`）<br><br>`​wwww, MMM DD YYYY`：显示星期和日期完整日（例如：`Friday, Nov 15 2024`）<br><br>`​YYYY-MM-DD hh:mm:ss.fff`：包括毫秒（例如：`2024-11-15 13:30:45.123`）。<br><br>[数字格式和时间格式的描述](https://help.qlik.com/zh-CN/sense/November2025/Subsystems/Hub/Content/Sense_Hub/Introduction/conventions-number-time-formats.htm) |

示例：图表表达式

| 示例 | 结果 |
| --- | --- |
| `Timestamp#('12-03-2023 10:25:30', 'DD-MM-YYYY hh:mm:ss')` | 返回 `12-03-2023 10:25:30` |
| `Timestamp#('2023/03/15 13:45', 'YYYY/MM/DD hh:mm')` | 返回 `2023/03/15 13:45` |

## 示例 - Timestamp# 基本原理

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/InterpretationFunctions/timestamp_hash.htm)

#### 加载脚本

概览

打开数据加载编辑器，并将下面的加载脚本添加到新部分。

加载脚本包含：

* 加载到名为 `Example` 的数据表中的数据集。

* 数据表中的以下字段：

  * `InputString`

* 使用 `Timestamp#` 函数将表达式视为日期和时间值的前置加载。执行时，它会创建一个名为 `TimeStamp_InputString` 的附加字段。

加载脚本

```
SET DateFormat='M/D/YYYY'
Example:
Load *,
Timestamp(Timestamp#(InputString)) as TimeStamp_InputString;
LOAD * INLINE [
InputString
2015-09-15T12:13:14
1952-10-16T13:14:00+0200
1109-03-01T14:15
];
```

结果

加载数据并打开工作表。创建新表并将这些字段添加为维度：

* ` InputString
                                       `

* `TimeStamp_InputString`

结果表

| InputString | TimeStamp\_InputString |
| --- | --- |
| 1109-03-01T14:15 | 3/1/1109 2:15:00 PM |
| 1952-10-16T13:14:00+0200 | 10/16/1952 11:14:00 AM |
| 2015-09-15T12:13:14 | 9/15/2015 12:13:14 PM |

在本例中，您可以看到如何使用 `Timestamp#` 函数将字符串值计算为时间戳。

## 示例 – Timestamp# 场景

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/InterpretationFunctions/timestamp_hash.htm)

#### 加载脚本

概览

事件日志中的数据包含要使用的时间戳格式。

打开数据加载编辑器，并将下面的加载脚本添加到新部分。

加载脚本包含：

* 加载到名为 `Example` 的数据表中的数据集。

* 数据表中有以下字段：

  * `Event`
  * `EventDateTime`

* 使用 `Timestamp#` 函数将 `EventDateTime` 字段中的值转换为系统可以理解的日期和时间格式的前置加载。执行时，它会创建一个名为 `EventTimestamp` 的附加字段。

加载脚本

```
SET TimestampFormat='M/D/YYYY h:mm:ss[.fff] TT';
Example:
LOAD
Event,
EventDateTime,
Timestamp#(EventDateTime, 'DD-MM-YYYY hh:mm:ss') AS EventTimestamp
INLINE [
Event, EventDateTime
"Login", "12-03-2023 10:25:30"
"Logout", "12-03-2023 12:45:10"
"Login", "13-03-2023 09:10:15"
"Logout", "13-03-2023 17:30:20"
"Login", "14-03-2023 08:00:00"
];
```

结果

加载数据并打开工作表。创建新表并将这些字段添加为维度：

* ` Event
                                       `

* `EventDateTime`

* `EventTimestamp`

创建以下度量：

* `=Timestamp(EventTimestamp)`，使用加载脚本中提供的格式作为默认设置查看格式化的时间。

结果表

| Event | EventDateTime | EventTimestamp | Timestamp(EventTimestamp) |
| --- | --- | --- | --- |
| Login | 12-03-2023 10:25:30 | 12-03-2023 10:25:30 | 3/12/2023 10:25:30 AM |
| Login | 13-03-2023 09:10:15 | 13-03-2023 09:10:15 | 3/13/2023 9:10:15 AM |
| Login | 14-03-2023 08:00:00 | 14-03-2023 08:00:00 | 3/14/2023 8:00:00 AM |
| Logout | 12-03-2023 12:45:10 | 12-03-2023 12:45:10 | 3/12/2023 12:45:10 PM |
| Logout | 13-03-2023 17:30:20 | 13-03-2023 17:30:20 | 3/13/2023 5:30:20 PM |

在这个例子中，您可以看到如何使用 `Timestamp#` 函数转换值。