# minute 脚本和图表功能

此函数用于根据标准数字解释当 expression 小数部分被解释为时间时返回一个表示分钟的整数。

语法：

minute(expression)

返回数据类型： 整数

## 适合使用 minute 的情况

当您希望按分钟比较聚合时，`minute()` 函数非常有用。例如，如果希望按分钟查看活动计数分布，可以使用该函数。

通过使用函数在主日历表中创建字段，可以在 Load 脚本中创建这些维度。或者，它们可以直接在图表中用作计算维度。

函数示例

| 示例 | 结果 |
| --- | --- |
| `minute (<br>'09:14:36' )` | 返回 14。 |
| `minute (<br>'0.5555' )` | 返回 19（因为 0.5555 = 13:19:55） |

## 区域设置

除非另有规定，本主题中的示例使用以下日期格式：MM/DD/YYYY。日期格式已经在数据加载脚本中的 `SET DateFormat` 语句中指定。由于区域设置和其他因素，系统中的默认日期格式可能有所不同。您可以更改以下示例中的格式以满足您的要求。或者，您可以更改加载脚本中的格式以匹配这些示例。有关更多信息，请参阅[修改应用程序和脚本的区域设置](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Apps/regional-settings-in-apps.htm)。

应用程序中的默认区域设置基于用户配置文件。这些区域格式设置与 Qlik Cloud 用户界面中显示的语言无关。Qlik Cloud 将以与您使用的浏览器相同的语言显示。

如果你是应用程序创建者，你可以为自己创建的应用程序设置默认区域。有关更多信息，请参阅[设置 Qlik Cloud Analytics 中创建应用程序和脚本所用的首选区域设置](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/UserInterface/Languages.htm#Setting)。

## 示例 1 – 变量（脚本）

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/minute.htm)

#### 加载脚本和结果

概述

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

加载脚本包含：

* 按时间戳包含交易的数据集，加载到名为 `Transactions` 的表格中。

* 使用默认 `TimeStamp` 系统变量 (`M/D/YYYY h:mm:ss[.fff] TT`)。

* 创建字段 `minute`，以计算交易发生的时间。

加载脚本

```
SET TimestampFormat='M/D/YYYY h:mm:ss[.fff] TT';

Transactions:
    Load
        *,
        minute(timestamp) as minute
        ;
Load
*
Inline 
[
id,timestamp,amount
9497,'2022-01-05 19:04:57',47.25,
9498,'2022-01-03 14:21:53',51.75,
9499,'2022-01-03 05:40:49',73.53,
9500,'2022-01-04 18:49:38',15.35,
9501,'2022-01-01 22:10:22',31.43,
9502,'2022-01-05 19:34:46',13.24,
9503,'2022-01-04 22:58:34',74.34,
9504,'2022-01-06 11:29:38',50.00,
9505,'2022-01-02 08:35:54',36.34,
9506,'2022-01-06 08:49:09',74.23
];
```

结果

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

* `timestamp`

* `minute`

结果表

| 时间戳 | minute |
| --- | --- |
| 2022-01-01 22:10:22 | 10 |
| 2022-01-02 08:35:54 | 35 |
| 2022-01-03 05:40:49 | 40 |
| 2022-01-03 14:21:53 | 21 |
| 2022-01-04 18:49:38 | 49 |
| 2022-01-04 22:58:34 | 58 |
| 2022-01-05 19:04:57 | 4 |
| 2022-01-05 19:34:46 | 34 |
| 2022-01-06 08:49:09 | 49 |
| 2022-01-06 11:29:38 | 29 |

`minute` 字段中的值是通过使用 `minute()` 函数并将 `timestamp` 作为前置 Load 语句中的表达式传递来创建的。

## 示例 2–图表对象（图表）

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/minute.htm)

#### 加载脚本和图表表达式

概述

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

加载脚本包含：

* 与第一个示例相同的数据集和场景。

* 使用默认 `TimeStamp` 系统变量 (`M/D/YYYY h:mm:ss[.fff] TT`) 。

然而，在本例中，未更改的数据集被加载到应用程序中。 `minute` 通过图表对象中的度量计算值。

加载脚本

```
SET TimestampFormat='M/D/YYYY h:mm:ss[.fff] TT';

Transactions:
Load
*
Inline 
[
id,timestamp,amount
9497,'2022-01-05 19:04:57',47.25,
9498,'2022-01-03 14:21:53',51.75,
9499,'2022-01-03 05:40:49',73.53,
9500,'2022-01-04 18:49:38',15.35,
9501,'2022-01-01 22:10:22',31.43,
9502,'2022-01-05 19:34:46',13.24,
9503,'2022-01-04 22:58:34',74.34,
9504,'2022-01-06 11:29:38',50.00,
9505,'2022-01-02 08:35:54',36.34,
9506,'2022-01-06 08:49:09',74.23
];
```

结果

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

创建以下度量：

`=minute(timestamp)`

结果表

| 时间戳 | minute |
| --- | --- |
| 2022-01-01 22:10:22 | 10 |
| 2022-01-02 08:35:54 | 35 |
| 2022-01-03 05:40:49 | 40 |
| 2022-01-03 14:21:53 | 21 |
| 2022-01-04 18:49:38 | 49 |
| 2022-01-04 22:58:34 | 58 |
| 2022-01-05 19:04:57 | 4 |
| 2022-01-05 19:34:46 | 34 |
| 2022-01-06 08:49:09 | 49 |
| 2022-01-06 11:29:38 | 29 |

`minute` 的值是通过使用 `minute()` 函数并将 `timestamp` 作为表达式传递给图表对象的度量来创建的。

## 示例 3 – 场景

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/minute.htm)

#### 加载脚本和图表表达式

概述

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

加载脚本包含：

* 时间戳的数据集，生成该数据集以表示检票口处的条目。

* 每个 `timestamp` 的信息及其对应的 `id`，加载到名为 `Ticket_Barrier_Tracker` 的表中。

* 使用默认 `TimeStamp` 系统变量 (`M/D/YYYY h:mm:ss[.fff] TT`) 。

用户需要一个图表对象，以分钟为单位显示关口条目的计数。

加载脚本

```
SET TimestampFormat='M/D/YYYY h:mm:ss[.fff] TT';

tmpTimeStampCreator:
	load 
		*
    where year(date)=2022;
load
	date(recno()+makedate(2021,12,31)) as date
AutoGenerate 1;

join load
	maketime(floor(rand()*24),floor(rand()*59),floor(rand()*59)) as time
autogenerate 10000;

Ticket_Barrier_Tracker:
load
	recno() as id,
	timestamp(date + time) as timestamp
resident tmpTimeStampCreator;

drop table tmpTimeStampCreator;
```

结果

执行以下操作：

1. 加载数据并打开工作表。新建表格。

2. 使用以下表达式创建计算维度：

   `=minute(timestamp)`

3. 添加以下聚合度量以计算条目总数：

   `=count(id)`

4. 将度量的数字格式设置为金额。

结果表

| minute(timestamp) | =count(id) |
| --- | --- |
| 0 | 174 |
| 1 | 171 |
| 2 | 175 |
| 3 | 165 |
| 4 | 188 |
| 5 | 176 |
| 6 | 158 |
| 7 | 187 |
| 8 | 178 |
| 9 | 178 |
| 10 | 197 |
| 11 | 161 |
| 12 | 166 |
| 13 | 184 |
| 14 | 159 |
| 15 | 161 |
| 16 | 152 |
| 17 | 160 |
| 18 | 176 |
| 19 | 164 |
| 20 | 170 |
| 21 | 170 |
| 22 | 142 |
| 23 | 145 |
| 24 | 155 |
| + 35 更多行 |  |