# FiQueLa ## Docs - [Debugging and benchmarking](https://docs.fiquela.io/advanced/debugging-benchmarking.md): Inspect queries, dump results, and benchmark performance using the FQL\Query\Debugger class. - [EXPLAIN and EXPLAIN ANALYZE](https://docs.fiquela.io/advanced/explain-analyze.md): Inspect query execution plans and collect real per-phase metrics without a database query planner. - [Exporting results with INTO](https://docs.fiquela.io/advanced/export-into.md): Export query results to a file using the INTO clause. Supports CSV, JSON, XML, XLSX, ODS, and NDJSON output. - [SQL Provider facade](https://docs.fiquela.io/advanced/sql-provider.md): Compile, tokenize, format, highlight, lint, and parse FQL expressions through the unified Sql\Provider facade introduced in FiQueLa 3.0. - [UNION and UNION ALL](https://docs.fiquela.io/advanced/union.md): Combine results from multiple queries with UNION (deduplicates) or UNION ALL (keeps all rows). - [Enums](https://docs.fiquela.io/api/enums.md): All backed enums in the FQL\Enum namespace, with their cases, values, and available methods. - [Exceptions](https://docs.fiquela.io/api/exceptions.md): All exception classes in the FQL\Exception namespace, when they are thrown, and how to catch them. - [Query\Provider](https://docs.fiquela.io/api/query-provider.md): Static factory methods for opening files and parsing FQL strings into a Query instance, plus the full fluent query API. - [ResultsProvider](https://docs.fiquela.io/api/results-provider.md): The result set returned by Query::execute(). Provides iteration, fetching, aggregation, and export methods. - [Stream\Provider](https://docs.fiquela.io/api/stream-provider.md): Static factory methods for opening data streams from files and strings, plus documentation for each individual stream class. - [Query lifecycle](https://docs.fiquela.io/concepts/query-lifecycle.md): The ten-step execution order FiQueLa follows when processing a query — from loading the source to appending unions. - [Stream vs. in-memory results](https://docs.fiquela.io/concepts/stream-vs-memory.md): How FiQueLa chooses between Results\Stream and Results\InMemory, when to override the default, and the memory implications of each mode. - [Supported formats](https://docs.fiquela.io/concepts/supported-formats.md): Every file format FiQueLa can read, with class names, capabilities, and code examples for opening each one. - [Aggregate functions](https://docs.fiquela.io/functions/aggregate-functions.md): Reference for aggregate functions in FiQueLa: COUNT, SUM, AVG, MIN, MAX, and GROUP_CONCAT. Includes DISTINCT support, GROUP BY, and HAVING usage. - [Custom functions](https://docs.fiquela.io/functions/custom-functions.md): Extend FiQueLa with your own scalar or aggregate functions and register them with the global FunctionRegistry. - [Math functions](https://docs.fiquela.io/functions/math-functions.md): Reference for arithmetic and rounding functions in FiQueLa, including add, subtract, multiply, divide, ceil, floor, round, and modulo. - [String functions](https://docs.fiquela.io/functions/string-functions.md): Reference for all string manipulation functions available in FiQueLa, including concatenation, case conversion, padding, substring extraction, and fulltext search. - [Utility functions](https://docs.fiquela.io/functions/utils-functions.md): Reference for array, type, date/time, conditional, and miscellaneous utility functions in FiQueLa. - [Installation](https://docs.fiquela.io/installation.md): Install FiQueLa via Composer and verify the required PHP extensions are available. - [Introduction](https://docs.fiquela.io/introduction.md): FiQueLa is a PHP library that lets you query structured files with SQL-like syntax or a fluent API — no database required. - [Conditions](https://docs.fiquela.io/querying/conditions.md): Filter rows with WHERE and HAVING using comparison operators, logical operators, condition groups, LIKE, REGEXP, IS, BETWEEN, and more. - [Fetching results](https://docs.fiquela.io/querying/fetching-results.md): Execute queries and retrieve results with fetchAll(), fetch(), fetchSingle(), fetchNth(), exists(), count(), sum(), avg(), min(), max(), and DTO mapping. - [Fluent API](https://docs.fiquela.io/querying/fluent-api.md): Build FiQueLa queries with a chainable PHP API. Select fields, filter rows, join files, group, sort, and paginate — all in one expression. - [FQL syntax](https://docs.fiquela.io/querying/fql-syntax.md): Reference for File Query Language — a SQL-like string syntax for querying files directly in FiQueLa. - [Grouping and aggregations](https://docs.fiquela.io/querying/grouping-aggregations.md): Group rows with groupBy(), apply aggregate functions like COUNT, SUM, AVG, MIN, MAX, and GROUP_CONCAT, and filter grouped results with HAVING. - [Joining data sources](https://docs.fiquela.io/querying/joins.md): Join data from multiple files and formats in a single FiQueLa query using INNER, LEFT, RIGHT, and FULL joins. - [Opening files](https://docs.fiquela.io/querying/opening-files.md): Four ways to open files and start querying with FiQueLa: Stream\Provider, direct stream classes, Query\Provider::fromFileQuery(), and Query\Provider::fql(). - [Quickstart](https://docs.fiquela.io/quickstart.md): Run your first FiQueLa query against a structured file in under five minutes. ## OpenAPI Specs - [openapi](https://docs.fiquela.io/api-reference/openapi.json)