Skip to content
forked from duckdb/duckdb

DuckDB is an analytical in-process SQL database management system

License

Notifications You must be signed in to change notification settings

kerwin-zk/duckdb

This branch is 2032 commits behind duckdb/duckdb:main.

Folders and files

NameName
Last commit message
Last commit date
Jan 9, 2025
Jan 6, 2025
Jan 9, 2025
May 27, 2024
Jan 9, 2025
Mar 26, 2024
Jan 9, 2025
Jan 9, 2025
Jan 9, 2025
Jan 4, 2025
Jan 9, 2025
Dec 4, 2024
Jul 29, 2024
Dec 20, 2022
Aug 21, 2023
Sep 5, 2023
Oct 2, 2024
Sep 6, 2024
Sep 3, 2024
Jul 28, 2021
Jan 8, 2025
Jul 13, 2023
Aug 6, 2024
Aug 3, 2018
Nov 11, 2019
Nov 7, 2019
Jan 4, 2025
Jan 8, 2025
Jan 2, 2025

Repository files navigation

DuckDB logo

Github Actions Badge discord Latest Release

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.

About

DuckDB is an analytical in-process SQL database management system

Resources

License

Citation

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 83.2%
  • C 8.4%
  • Python 5.9%
  • Julia 1.1%
  • Swift 0.7%
  • CMake 0.5%
  • Other 0.2%