デフォルトでは、TSDB for InfluxDB® はタイムスタンプの昇順で結果を返します。最初に返されるポイントは最も古いタイムスタンプに関連付けられ、最後に返されるポイントは最新のタイムスタンプに関連付けられます。ORDER BY time DESC はデフォルトのタイムスタンプ順序を逆にして、TSDB for InfluxDB® が最新のタイムスタンプに関連付けられたポイントを返すようにします。
構文
SELECT_clause [INTO_clause] FROM_clause [WHERE_clause] [GROUP_BY_clause] ORDER BY time DESC
説明
クエリに GROUP BY 句が含まれている場合、ORDER BY time DESC 句は GROUP BY 句の後になければなりません。クエリに WHERE 句が含まれていて、GROUP BY 句が含まれていない場合、ORDER BY time DESC 句は WHERE 句の後になければなりません。
例
タイムスタンプに基づいて降順でポイントを取得する
> SELECT "water_level" FROM "h2o_feet" WHERE "location" = 'santa_monica' ORDER BY time DESC
name: h2o_feet
time water_level
---- -----------
2015-09-18T21:42:00Z 4.938
2015-09-18T21:36:00Z 5.066
[...]
2015-08-18T00:06:00Z 2.116
2015-08-18T00:00:00Z 2.064
このクエリは、h2o_feet メジャーメントからのポイントをタイムスタンプの降順で返します。最初に返されるポイントは最新のタイムスタンプに関連付けられています。上記のステートメントに ORDER by time DESC が含まれていない場合、クエリはタイムスタンプの昇順でポイントを返します。最初に返されるポイントは最も古いタイムスタンプ 2015-08-18T00:00:00Z に関連付けられています。最後に返されるポイントは最新のタイムスタンプ 2015-09-18T21:42:00Z に関連付けられています。
タイムスタンプに基づいて降順でポイントを取得し、GROUP BY time() 句を含める
> SELECT MEAN("water_level") FROM "h2o_feet" WHERE time >= '2015-08-18T00:00:00Z' AND time <= '2015-08-18T00:42:00Z' GROUP BY time(12m) ORDER BY time DESC
name: h2o_feet
time mean
---- ----
2015-08-18T00:36:00Z 4.6825
2015-08-18T00:24:00Z 4.80675
2015-08-18T00:12:00Z 4.950749999999999
2015-08-18T00:00:00Z 5.07625
このクエリは、InfluxQL 関数と GROUP BY 句で指定された時間間隔を使用して、指定された時間範囲内の 12 分ごとの間隔で water_level フィールドキーの平均フィールド値を計算します。ORDER BY time DESC 句によって返される最初の結果は、最新の 12 分間隔に対応します。上記のステートメントに ORDER by time DESC が含まれていない場合、クエリはタイムスタンプの昇順でポイントを返します。最初に返されるポイントは最も古いタイムスタンプ 2015-08-18T00:00:00Z に関連付けられています。最後に返されるポイントは最新のタイムスタンプ 2015-08-18T00:36:00Z に関連付けられています。
InfluxDB® は InfluxData によって登録された商標であり、TSDB for InfluxDB® とは提携しておらず、TSDB for InfluxDB® を推奨していません。