在日常数据分析工作中,我们经常会遇到过这样的问题:
- CSV、Excel、JSON 等文件在本地,数据库使用远程连接,来回折腾数据的导入导出;
- BI 工具必须先创建数据仓库、执行 ETL 任务获取数据,成本高、链路长;
- 数据探索阶段编写脚本过于复杂,门槛过高。
那么,有没有一种方式能够避免以上问题,直接使用 SQL 实现跨本地文件和远程数据库的一站式数据分析?
今天给大家介绍一个为了解决这些痛点的开源项目:DuckQuery。

DuckQuery是一款免费开源、基于 DuckDB 引擎的 AI 可视化 SQL 工作台,提供本地文件与远程数据库库一站式跨源分析。
DuckQuery 主要采用 TypeScript/JavaScript + Python 语言开发,遵循 MIT 开源协议,代码托管在 GitHub:
https://github.com/Chenkeliang/duckdb-query
功能特性
- 本地文件导入:直接拖拽 CSV、Excel、Parquet、JSON 到浏览器,转化为 DuckDB 原生表,不需要上传服务器,查询速度极快。
- 外部数据库:支持连接 MySQL、 PostgreSQL 外部数据库,并且基于 DuckDB 的统一查询引擎实现跨数据源(包括文件和数据库)分析。
- 查询工作台:SQL 编辑器提供代码补全、语法高亮、格式化等辅助功能,同时还提供可视化的 JOIN 查询、集合运算以及透视表配置,方便快速数据分析。

- 可视化图表:可以基于查询结果一键转换为柱状图、折线图、面积图、饼图、环形图、大数字等可视化结果。

-
数据导出:查询结果可以导出为 CSV、JSON、Excel 格式文件。
-
AI 助手:配置模型之后,可以提供问数对话、报错医生、AI 图表推荐等功能。
-
本地优先:DuckQuery 支持自托管,通过本地引擎(例如 DuckDB-Wasm)直接执行查询,数据不上传、计算不依赖云端服务,让用户对数据拥有完全控制权。
在线体验
DuckQuery 提供了一个在线体验环境,网址如下:
https://chenkeliang.github.io/duckdb-query/

在线环境不支持连接远程数据库、读取 Excel 文件以及 AI 助手功能,这些功能需要安装本地版本。
下载安装
DuckQuery 提供了 Windows、macOS 桌面版,下载地址如下:
https://github.com/Chenkeliang/duckdb-query/releases

另外,DuckQuery 还提供了基于 Docker 和 Docker Compose 自托管版本,安装命令如下:
bash
$ git clone https://github.com/Chenkeliang/duckdb-query.git
$ cd duckdb-query && ./quick-start.sh
启动容器服务之后,通过以下地址进行访问: