# For Users

- [Query](https://docs.pinot.apache.org/release-1.0.0/for-users/user-guide-query.md): Learn how to query Apache Pinot using SQL or explore data using the web-based Pinot query console.
- [Querying Pinot](https://docs.pinot.apache.org/release-1.0.0/for-users/user-guide-query/querying-pinot.md): Learn how to query Pinot using SQL
- [Querying JSON data](https://docs.pinot.apache.org/release-1.0.0/for-users/user-guide-query/json-queries.md)
- [Query Options](https://docs.pinot.apache.org/release-1.0.0/for-users/user-guide-query/query-options.md): This document contains all the available query options
- [Aggregation Functions](https://docs.pinot.apache.org/release-1.0.0/for-users/user-guide-query/supported-aggregations.md): Aggregate functions return a single result for a group of rows.
- [Cardinality Estimation](https://docs.pinot.apache.org/release-1.0.0/for-users/user-guide-query/how-to-handle-unique-counting.md)
- [Explain Plan](https://docs.pinot.apache.org/release-1.0.0/for-users/user-guide-query/explain-plan.md)
- [Filtering with IdSet](https://docs.pinot.apache.org/release-1.0.0/for-users/user-guide-query/filtering-with-idset.md): Learn how to look up IDs in a list of values. Filtering with IdSet is only supported with the single-stage query engine (v1).
- [GapFill Function For Time-Series Dataset](https://docs.pinot.apache.org/release-1.0.0/for-users/user-guide-query/gap-fill-functions.md)
- [Grouping Algorithm](https://docs.pinot.apache.org/release-1.0.0/for-users/user-guide-query/grouping-algorithm.md)
- [JOINs](https://docs.pinot.apache.org/release-1.0.0/for-users/user-guide-query/joins.md): Pinot supports JOINs, including left, right, full, semi, anti, lateral, and equi JOINs. Use JOINs to connect two table to generate a unified view, based on a related column between the tables.
- [Lookup UDF Join](https://docs.pinot.apache.org/release-1.0.0/for-users/user-guide-query/lookup-udf-join.md): Lookup UDF Join is only supported with the single-stage query engine (v1). For more information about using JOINs with the multi-stage query engine, see JOINs.
- [Transformation Functions](https://docs.pinot.apache.org/release-1.0.0/for-users/user-guide-query/supported-transformations.md): This document contains the list of all the transformation functions supported by Pinot SQL.
- [User-Defined Functions (UDFs)](https://docs.pinot.apache.org/release-1.0.0/for-users/user-guide-query/scalar-functions.md)
- [Window functions](https://docs.pinot.apache.org/release-1.0.0/for-users/user-guide-query/windows-functions.md): Use window functions to compute averages, sort, rank, or count items, calculate sums, and find minimum or maximum values.
- [APIs](https://docs.pinot.apache.org/release-1.0.0/for-users/api.md)
- [Broker Query API](https://docs.pinot.apache.org/release-1.0.0/for-users/api/querying-pinot-using-standard-sql.md)
- [Query Response Format](https://docs.pinot.apache.org/release-1.0.0/for-users/api/querying-pinot-using-standard-sql/response-format.md)
- [Controller Admin API](https://docs.pinot.apache.org/release-1.0.0/for-users/api/pinot-rest-admin-interface.md)
- [Controller API Reference](https://docs.pinot.apache.org/release-1.0.0/for-users/api/controller-api-reference.md): All user APIs available in Pinot
- [External Clients](https://docs.pinot.apache.org/release-1.0.0/for-users/clients.md)
- [JDBC](https://docs.pinot.apache.org/release-1.0.0/for-users/clients/jdbc.md)
- [Java](https://docs.pinot.apache.org/release-1.0.0/for-users/clients/java.md)
- [Python](https://docs.pinot.apache.org/release-1.0.0/for-users/clients/python.md)
- [Golang](https://docs.pinot.apache.org/release-1.0.0/for-users/clients/golang.md): Pinot Client for Golang
- [Tutorials](https://docs.pinot.apache.org/release-1.0.0/for-users/tutorials.md)
- [Use OSS as Deep Storage for Pinot](https://docs.pinot.apache.org/release-1.0.0/for-users/tutorials/use-oss-as-deep-storage-for-pinot.md): Configure AliCloud Object Storage Service (OSS) as Pinot deep storage
- [Ingest Parquet Files from S3 Using Spark](https://docs.pinot.apache.org/release-1.0.0/for-users/tutorials/ingest-parquet-files-from-s3-using-spark.md)
- [Creating Pinot Segments](https://docs.pinot.apache.org/release-1.0.0/for-users/tutorials/create-pinot-segments.md)
- [Use S3 as Deep Storage for Pinot](https://docs.pinot.apache.org/release-1.0.0/for-users/tutorials/use-s3-as-deep-store-for-pinot.md)
- [Use S3 and Pinot in Docker](https://docs.pinot.apache.org/release-1.0.0/for-users/tutorials/use-s3-and-pinot-in-docker.md)
- [Batch Data Ingestion In Practice](https://docs.pinot.apache.org/release-1.0.0/for-users/tutorials/batch-data-ingestion-in-practice.md)
- [Schema Evolution](https://docs.pinot.apache.org/release-1.0.0/for-users/tutorials/schema-evolution.md)


---

# 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.pinot.apache.org/release-1.0.0/for-users.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.
