

如需與 Amazon Timestream for LiveAnalytics 類似的功能，請考慮使用 Amazon Timestream for InfluxDB。它提供簡化的資料擷取和單一位數毫秒查詢回應時間，以進行即時分析。[在這裡](https://docs.aws.amazon.com//timestream/latest/developerguide/timestream-for-influxdb.html)進一步了解。

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 查詢
<a name="queries-bp"></a>

以下是使用 Amazon Timestream for LiveAnalytics 進行查詢的建議最佳實務。
+ 僅包含查詢所需的量值和維度名稱。新增無關的資料欄會增加資料掃描，這會影響查詢的效能。
+ 在生產環境中部署查詢之前，建議您檢閱查詢洞察，以確保空間和時間剔除是最佳的。如需詳細資訊，請參閱[使用查詢洞察來最佳化 Amazon Timestream 中的查詢](using-query-insights.md)。
+ 盡可能使用 SELECT 子句和 WHERE 子句中的內建彙總和純量函數，將資料運算推送至 Timestream for LiveAnalytics，以改善查詢效能並降低成本。請參閱 [SELECTUNLOAD](supported-sql-constructs.SELECT.md) 和 [彙總函數](aggregate-functions.md)。
+ 盡可能使用近似函數。例如，使用 APPROX\$1DISTINCT 而非 COUNT(DISTINCT column\$1name) 來最佳化查詢效能並降低查詢成本。請參閱 [彙總函數](aggregate-functions.md)。
+ 使用 CASE 表達式執行複雜的彙總，而不是多次從相同的資料表中選取。請參閱 [CASE 陳述式](conditional-expressions.CASE.md)。
+ 如果可能，請在查詢的 WHERE 子句中包含時間範圍。這可最佳化查詢效能和成本。例如，如果您只需要資料集的最後一小時資料，則請包含時間述詞，例如 > 前 (1h)。請參閱 [SELECTUNLOAD](supported-sql-constructs.SELECT.md) 和 [間隔和持續時間](date-time-functions.md#date-time-functions-interval-duration)。
+ 當查詢存取資料表中的量值子集時，請務必在查詢的 WHERE 子句中包含量值名稱。
+ 盡可能在比較查詢的 WHERE 子句中的維度和量值時使用等式運算子。維度和度量名稱的等式述詞可改善查詢效能並降低查詢成本。
+ 盡可能避免在 WHERE 子句中使用 函數來最佳化成本。
+ 避免多次使用 LIKE 子句。相反地，當您在字串欄上篩選多個值時，請使用規則表達式。請參閱 [規則運算式函數](regex-functions.md)。
+ 只在查詢的 GROUP BY 子句中使用必要的資料欄。
+ 如果查詢結果需要以特定順序排列，請在最外部查詢的 ORDER BY 子句中明確指定該順序。如果您的查詢結果不需要排序，請避免使用 ORDER BY 子句來改善查詢效能。
+ 如果您只需要查詢中的前 N 列，請使用 LIMIT 子句。
+ 如果您使用 ORDER BY 子句來查看最上方或最下方的 N 值，請使用 LIMIT 子句來降低查詢成本。
+ 使用傳回回應中的分頁字符來擷取查詢結果。如需詳細資訊，請參閱[查詢](API_query_Query.html)。
+ 如果您已開始執行查詢，並發現查詢不會傳回您要尋找的結果，請取消查詢以節省成本。如需詳細資訊，請參閱 [CancelQuery](API_query_CancelQuery.html)。
+ 如果您的應用程式遇到限流，請繼續以相同的速率將資料傳送至 Amazon Timestream for LiveAnalytics，讓 Amazon Timestream for LiveAnalytics 能夠自動擴展，以滿足應用程式的查詢輸送量需求。
+ 如果應用程式的查詢並行需求超過 Timestream for LiveAnalytics 的預設限制，請聯絡 支援 以增加限制。