DuckDB CLI logo

DuckDB CLI DuckDB

Use this command to install DuckDB CLI:
winget install --id=DuckDB.cli -e

DuckDB is a high-performance analytical database system. It is designed to be fast, reliable and easy to use. DuckDB provides a rich SQL dialect, with support far beyond basic SQL.

DuckDB CLI is a high-performance analytical database system designed for fast, reliable, and efficient data analysis. It is built to handle complex queries with ease, offering a robust SQL dialect that extends far beyond basic functionality. DuckDB supports advanced features such as nested correlated subqueries, window functions, collations, and complex data types like arrays, structs, and maps.

Key Features:

  • Rich SQL Dialect: Supports advanced SQL constructs, including window functions, recursive queries, and complex data types.
  • High Performance: Optimized for speed and efficiency, making it ideal for large-scale analytical tasks.
  • Ease of Use: Intuitive design with a simple interface, allowing users to quickly execute queries and derive insights.

Audience & Benefit:

Ideal for data analysts, engineers, and researchers who need a powerful tool for querying and analyzing datasets. DuckDB CLI provides fast results and supports complex operations, enabling users to perform deep analysis efficiently without the need for extensive infrastructure setup.

DuckDB CLI can be installed via winget, ensuring seamless integration into your workflow.

README

<img src="logo/DuckDB_Logo-horizontal.svg" height="100" />

DuckDB

DuckDB is a high-performance analytical database system. It is designed to be fast, reliable, portable, and easy to use. DuckDB provides a rich SQL dialect, with support far beyond basic SQL. DuckDB supports arbitrary and nested correlated subqueries, window functions, collations, complex types (arrays, structs, maps), and several extensions designed to make SQL easier to use.

DuckDB is available as a standalone CLI application and has clients for Python, R, Java, Wasm, etc., with deep integrations with packages such as pandas and dplyr.

For more information on using DuckDB, please refer to the DuckDB documentation.

Installation

If you want to install DuckDB, please see our installation page for instructions.

Data Import

For CSV files and Parquet files, data import is as simple as referencing the file in the FROM clause:

SELECT * FROM 'myfile.csv';
SELECT * FROM 'myfile.parquet';

Refer to our Data Import section for more information.

SQL Reference

The documentation contains a SQL introduction and reference.

Development

For development, DuckDB requires CMake, Python3 and a C++11 compliant compiler. Run make in the root directory to compile the sources. For development, use make debug to build a non-optimized debug version. You should run make unit and make allunit to verify that your version works properly after making changes. To test performance, you can run BUILD_BENCHMARK=1 BUILD_TPCH=1 make and then perform several standard benchmarks from the root directory by executing ./build/release/benchmark/benchmark_runner. The details of benchmarks are in our Benchmark Guide.

Please also refer to our Build Guide and Contribution Guide.

Support

See the Support Options page.

Versions
1.3.1
1.3.0
1.2.2
1.2.1
1.2.0
1.1.3
1.1.2
1.1.1
1.1.0
1.0.0
Website
License