# NQL時間選択

NQLでは、さまざまな形式でタイムフレームを指定できます。

## 時間の選択形式 <a href="#nqltimeselection-nqlduringpast" id="nqltimeselection-nqlduringpast"></a>

### 過去のNQL <a href="#nqltimeselection-nqlduringpast" id="nqltimeselection-nqlduringpast"></a>

`過去` 節を使用すると、特定の期間を指定して結果をフィルタリングできます。 時間は分、時間、または日数で表すことができます。

**例:**

過去45分間のナビゲーション数を取得します。

{% code overflow="wrap" lineNumbers="true" %}

```
web.page_views 過去45分
| 合計ナビゲーション = number_of_page_views.sum()
```

{% endcode %}

過去1時間のナビゲーション数を取得します。

{% code lineNumbers="true" %}

```
web.Page_views 過去1時間
| 合計ナビゲーション = number_of_page_views.sum() 
```

{% endcode %}

過去12時間のナビゲーション数を取得します。

{% code overflow="wrap" lineNumbers="true" %}

```
web.Page_views 過去12時間
| 合計ナビゲーション = number_of_page_views.sum() 
```

{% endcode %}

過去3日間のナビゲーション数を取得します。

{% code overflow="wrap" lineNumbers="true" %}

```
web.Page_views 過去3日
| 合計ナビゲーション = number_of_page_views.sum() 
```

{% endcode %}

### NQLから <a href="#nqltimeselection-nqlfromto" id="nqltimeselection-nqlfromto"></a>

`from to` 節を使用すると、開始時刻と終了時刻を指定してカスタムタイムフレームフィルタを適用できます。

#### 固定されたタイムフレームを指定する

期間の開始と終了の日時値を指定してタイムフレームフィルタを適用します。

**例:**

`2023年6月1日から2023年6月15日まで`のナビゲーション数

{% code overflow="wrap" lineNumbers="true" %}

```
web.page_views 2023年6月1日から2023年6月15日まで
| 合計ナビゲーション = number_of_page_views.sum() 
```

{% endcode %}

`2023年6月15日12:30から2023年6月15日16:15まで`のナビゲーション数

{% code overflow="wrap" lineNumbers="true" %}

```
web.page_views 2023年6月15日12:30から2023年6月15日16:15まで
| 合計ナビゲーション = number_of_page_views.sum() 
```

{% endcode %}

`2023年2月1日00:00:00から2023年2月28日23:45:00まで`のナビゲーション数

{% code overflow="wrap" lineNumbers="true" %}

```
web.page_views 2023年2月1日00:00:00から2023年2月28日23:45:00まで
| 合計ナビゲーション = number_of_page_views.sum()
```

{% endcode %}

`2023年2月1日から2023年2月28日まで`のナビゲーション数

{% code overflow="wrap" lineNumbers="true" %}

```
web.page_views 2023年2月1日から2023年2月28日まで
| 合計ナビゲーション = number_of_page_views.sum() 
```

{% endcode %}

許可されている日付形式についての詳細は、[NQLデータ型](/platform/ja/understanding-key-data-platform-concepts/nexthink-query-language-nql/nql-syntax-overview/nql-data-types.md)セクションを参照してください。 NQLエディターでのオートコンプリート機能により、利用可能なデータ形式の提案が提供されます。

#### 相対的なタイムフレームを指定する

現在の時間に対して相対的な時間ウィンドウを定義することで、タイムフレームフィルタを適用します。例：`15分前`, `2時間前`, `1日前`。

時間は分、時間または日数で表すことができます。

**例:**

前日のナビゲーション数。

{% code overflow="wrap" lineNumbers="true" %}

```
web.page_views 1d前
| 合計ナビゲーション = number_of_page_views.sum() 
```

{% endcode %}

3週間の連続期間にわたり7日間の間隔にまとめられたナビゲーション数。

{% code overflow="wrap" lineNumbers="true" %}

```
devices
| web.page_views 21d前から13d前まで
| 合計週1 = number_of_page_views.sum()
| web.page_views 14d前から8d前まで
| 合計週2 = number_of_page_views.sum()
| web.page_views 過去7日
| 合計現在の週 = number_of_page_views.sum()
```

{% endcode %}

### NQLで <a href="#nqltimeselection-nqlon" id="nqltimeselection-nqlon"></a>

`on` 節を使用すると、特定の日を選択してデータをクエリできます。

**例:**

`2023年7月15日`のナビゲーション数

{% code overflow="wrap" lineNumbers="true" %}

```
web.page_views on 2023年7月15日
| 合計ナビゲーション = number_of_page_views.sum()
```

{% endcode %}

{% code overflow="wrap" lineNumbers="true" %}

```
web.page_views on 2023年6月15日
| 合計ナビゲーション = number_of_page_views.sum()
```

{% endcode %}

## 結合されたテーブルにおけるタイムフレームの動作

`with` 句または `include` 句を使用してオブジェクトテーブルとイベントテーブルを結合する場合、ベーステーブルのタイムフレームは、`include` または `with` 句で明示的にタイムフレームが定義されない限り、後続のすべての句に適用されます。 これにより、クエリは単一で一貫した時間枠で評価されます。 この動作は、次の例で説明されています。

#### 例 1: ベースオブジェクトテーブルのタイムフレームを指定

この場合、ベーステーブルにタイムフレームが定義されており、明示的に上書きされない限り、すべての `include` および `with` 句に引き継がれます。

したがって、次のクエリには過去 7 日間のデバイスパフォーマンスイベントのみが含まれます。

{% code lineNumbers="true" %}

```
devices during past 7d
| include device_performance.events
| compute avg_installed_memory = installed_memory.avg(), used_memory_percentage = used_memory.avg()*100/installed_memory.avg()
| where used_memory_percentage > 75
```

{% endcode %}

#### 例 2: ベースオブジェクトテーブルのタイムフレームが上書きされる場合

この場合、`devices` データセットは過去 30 日間で評価されます。 しかし、`execution.crashes` データセットは、`include` 句が継承されたタイムフレームを明示的に上書きしているため、過去 7 日間のみで評価されます。

これにより、必要に応じて、より広いエンティティ選択ウィンドウと、より狭いイベント分析ウィンドウをクエリで組み合わせることができます。

{% code lineNumbers="true" %}

```
devices during past 30d
| include execution.crashes during past 7d
| compute nb_crashes = number_of_crashes.sum()
| list nb_crashes, hardware.manufacturer
```

{% endcode %}

#### 例 3: どこにもタイムフレームが指定されていない場合

この場合、ベースオブジェクトテーブルのデフォルトのタイムフレームが、含められたデータセットを含むクエリ全体に適用されます。

したがって、次のクエリでは、`users` テーブルのデフォルトのタイムフレーム (90d) が、キャンペーンレスポンス (保持期間 395d) を含むクエリ全体に適用されます。

{% code lineNumbers="true" %}

```
users
| include campaign.fuse_it_or_lose_it.responses
| where parameters.application_name == "Cisco Jabber"
```

{% endcode %}

## NQL datetime関数

[NQL where](/platform/ja/understanding-key-data-platform-concepts/nexthink-query-language-nql/nql-keywords/nql-where.md) 条件を使用して、現在の時間以外の時点に対する時間ウィンドウを指定することで、時間選択をさらにカスタマイズできます。例えば、営業時間、営業週、特定の日などです。

[NQL datetime関数](/platform/ja/understanding-key-data-platform-concepts/nexthink-query-language-nql/nql-functions/nql-date-time-functions.md)については、さらに詳しくは参照してください。

## 時間の粒度と保持 <a href="#nqltimeselection-timegranularityandretention" id="nqltimeselection-timegranularityandretention"></a>

時間選択の精度レベルを選択する柔軟性があります。 NQLの時間指定では、より詳細なデータを取得するために分または時間を使用してください。 より長期間をカバーするための少し少ない詳細データの取得には、日数を使用してください。

特定の時間を指定せずに\*\*日単位で時間枠を指定する場合（たとえば、「過去2日」、「2023年6月1日」、「1日前」など）、システムにはデフォルトで以下が含まれます。

* **期間の開始:** 開始日の午前0時00分00秒（真夜中）。
* **期間の終了:** 終了日の午後11時59分59秒。

これにより、指定された範囲内の全日が含まれることが保証されます。

{% hint style="info" %}
データの保存と粒度は、特定のテーブルにも依存します。 [データの解像度と保存](/platform/ja/understanding-key-data-platform-concepts/data-resolution-and-retention.md)に関する詳細は、ドキュメントページを参照してください。
{% endhint %}

### デスクトップ仮想化用の高解像度データを取得しています <a href="#nqltimeselection-timegranularityandretention" id="nqltimeselection-timegranularityandretention"></a>

デフォルトでは、VDIイベントデータは5分または1日ごとに解像度が設定されており、[時間選択に応じて](/platform/ja/understanding-key-data-platform-concepts/data-resolution-and-retention.md#dataresolutionandretention-eventdataresolution) NQLクエリで利用可能です。 VDIデータ解像度を上げるには、クエリの時間選択の最後に `by 30s` を追加してください。 過去 2 日間の高解像度データが利用可能です。

以下の例は、`vdi_events`から高解像度データを取得する方法を示しています。

#### データ解像度を 1 日から 30 秒に増やします。

{% code lineNumbers="true" %}

```
session.vdi_events during past 1d by 30s
```

{% endcode %}

{% code lineNumbers="true" %}

```
30秒までに2024-08-04に開催されるセッション.vdi_events
```

{% endcode %}

#### データ解像度を 5 分から 30 秒に増やします。

{% code lineNumbers="true" %}

```
過去24時間のセッション.vdi_events (30秒毎)
```

{% endcode %}

{% code lineNumbers="true" %}

```
session.vdi_events 2024 年 11 月 8 日 15:15 から 2024 年 11 月 8 日 17 時 30 秒まで
```

{% endcode %}

## タイムゾーン <a href="#nqltimeselection-timezones" id="nqltimeselection-timezones"></a>

Nexthinkクラウドインスタンスがユーザーのタイムゾーンとは異なるタイムゾーンにある場合、時間選択単位によって、指定された期間の開始と終了を定義する際にどのタイムゾーンが考慮されるかが決まります。

* フルデイの時間枠（例：`過去2日間にわたり`、`2024-02-07から2024-02-08まで`、`2024年2月<b>8</b>日`）は、クラウドインスタンスのタイムゾーンを使用します。
* 時間と分で表されるタイムフレーム (たとえば、「過去 15 分」、「2024-02-07 14:45:00 から 2024-02-08 14:45:00 まで」) は、ユーザーのタイムゾーンを使用します。

この区別は、クエリでカバーされる期間にのみ適用されます。 結果は常にユーザーのタイムゾーンで表示されます。

### **例:**

これが実際的なシナリオでどのように機能するか考えてみましょう。

2人のネクスシンクユーザーが、東部時間（ET）に設定されたネクスシンクプラットフォームを使用してデータをクエリしているとします。

* 最初のユーザーはNexthinkプラットフォームと同じタイムゾーンで操作しています。 彼らの現時間は、11月11日5時26分15秒です。
* 2番目のユーザーは中央ヨーロッパ時間（CET）帯で動作しています。 彼らの現時間は、11月11日11時26分15秒です。

その場合、2番目のNexthinkユーザーによって行われた時間に関連するクエリは、CETとETのタイムゾーンの違いを考慮して、対応する時間枠に変換されます。 これにより、地理的位置やタイムゾーンに関係なく、正確なデータの取得と分析が保証されます。

<table><thead><tr><th width="270">タイムフレーム選択</th><th width="239">ネクスシンクプラットフォームと同じ東部時間（ET）帯のネクスシンクユーザー：</th><th>中央ヨーロッパ時間（CET）帯のネクスシンクユーザー：</th><th data-hidden>タイムフレーム</th></tr></thead><tbody><tr><td>過去15分</td><td>11月11日、午前5時15分00秒<br>から午前5時30分00秒 ET​​</td><td>11月11日、午前11時15分00秒<br>から午前11時30分00秒 CET</td><td>中央ヨーロッパ時間（CET）帯のネクスシンクユーザー</td></tr><tr><td>過去2時間</td><td>11月11日、午前4時00分00秒<br>から午前6時00分00秒 ET​</td><td>11月11日、午前10時00分00秒<br>から午後12時00分00秒 CET</td><td></td></tr><tr><td>過去24時間</td><td>11月10日、午前6時00分00秒<br>から11月11日午前6時00分00秒 ET​</td><td>11月10日、午前12時00分00秒<br>から11月11日午前12時00分00秒 CET</td><td></td></tr><tr><td>2021年11月11日00:00:00から<br>2021年11月11日12:00:00まで</td><td>2021年11月11日午前12時00分00秒から<br>2021年11月11日午前12時00分00秒まで</td><td>2021年11月11日午前12時00分00秒から<br>2021年11月11日午前12時00分00秒まで</td><td></td></tr><tr><td>過去1日</td><td>11月11日午前12時00分00秒<br>から11月12日午前12時00分00秒 ET</td><td>11月11日、午前6時00分00秒<br>から11月12日午前6時00分00秒 CET</td><td></td></tr><tr><td>2021年11月10日に</td><td>11月10日午前12時00分00秒<br>から11月11日午前12時00分00秒 ET​​</td><td>11月10日、午前6時00分00秒<br>から11月11日午前6時00分00秒 CET</td><td></td></tr></tbody></table>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.nexthink.com/platform/ja/understanding-key-data-platform-concepts/nexthink-query-language-nql/nql-syntax-overview/nql-time-selection.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
