

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

# 查詢 Aurora PostgreSQL Limitless Database
<a name="limitless-query"></a>

Aurora PostgreSQL Limitless Database 與查詢的 PostgreSQL 語法相容。您可以使用 `psql` 或任何其他可與 PostgreSQL 搭配使用的連線公用程式，來查詢 Limitless Database。如 [連線至 Aurora PostgreSQL Limitless Database 資料庫叢集](limitless-shard.md#limitless-endpoint) 所示，若要執行查詢，您可以連線到無限端點。

Aurora PostgreSQL Limitless Database 中支援所有 PostgreSQL `SELECT` 查詢。不過，查詢會在兩層執行：

1. 用戶端將查詢傳送至其中的路由器

1. 資料所在的碎片

效能取決於資料庫的查詢方式，讓資料庫能夠同時在不同碎片實現不同查詢的高度同時處理。會先在分散式交易層 (路由器) 中剖析查詢。在規劃查詢執行之前，有一個分析階段來識別參與查詢之所有關係的位置。如果所有關係都是在相同碎片或參考資料表具有篩選碎片索引鍵的碎片資料表，則會略過路由器層的查詢規劃，並完全向下推送至碎片以進行規劃和執行。此程序可減少不同節點 (路由器和碎片) 之間的往返次數，並在大多數情況產生更好的效能。如需詳細資訊，請參閱[Aurora PostgreSQL Limitless Database 中的單一碎片查詢](limitless-query.single-shard.md)。

**注意**  
在[笛卡爾乘積](https://www.postgresql.org/docs/current/queries-table-expressions.html#QUERIES-FROM) (交叉聯結) 之類的某些情況，透過從碎片分開擷取資料查詢效能會更好。

如需查詢執行計劃的詳細資訊，請參閱 [Aurora PostgreSQL Limitless Database 參考Limitless Database 參考](limitless-reference.md)中的 [EXPLAIN](limitless-reference.DML-limitations.md#limitless-reference.DML-limitations.EXPLAIN)。如需查詢的一般資訊，請參閱 PostgreSQL 文件中的[查詢](https://www.postgresql.org/docs/current/queries-overview.html)。

**Topics**
+ [Aurora PostgreSQL Limitless Database 中的單一碎片查詢](limitless-query.single-shard.md)
+ [Aurora PostgreSQL Limitless Database 中的分散式查詢](limitless-query.distributed.md)
+ [Aurora PostgreSQL Limitless Database 中 PostgreSQL 日誌中的分散式查詢追蹤](limitless-query.tracing.md)
+ [Aurora PostgreSQL Limitless Database 中的分散式死鎖](limitless-query.deadlocks.md)