用于方便运行DuckDB SQL脚本并支持模板的命令行界面
项目描述
Qck 🦆👩💻
Qck(发音为“quack”)是一个命令行脚本,用于方便地运行DuckDB SQL脚本,并支持Jinja模板。
🛠️ 安装
使用pip install qck
进行安装。这将使qck
脚本可用。
🚀 使用方法
运行qck --help
以查看内置文档。
仅使用SQL文件运行qck
将执行查询并将结果打印到终端
qck myquery.sql
默认情况下,使用LIMIT
将输出限制为100行。您可以使用--limit
选项覆盖此设置
qck myquery.sql --limit 10 # will only print 10 rows
要执行查询并将结果写入Parquet文件,请使用--to-parquet
qck myquery.sql --to-parquet myresult.parquet
您还可以在Python中调用qck
from qck import qck
rs = qck("myquery.sql")
rs.to_parquet("myresult.parquet")
有关qck
的完整参数列表,请参阅源代码。
🖋️ 模板化
Qck可以将SQL文件解释为Jinja模板,从而在SQL文件中使用控制结构,如for循环。此外,Qck在模板中引入了一个特殊变量import
,允许访问任意Python函数。例如,考虑以下示例,我们导入glob
函数并使用它来列出要查询的文件
{% for fname in import('glob.glob')('data/*xlsx') %}
SELECT
"Value" AS value,
"Région" AS region,
FROM
st_read('{{ fname }}')
{% if not loop.last %}
UNION ALL
{% endif %}
{% endfor %}
项目详情
关闭
qck-2024.4.15.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | d586c48f0033659eede554f2a076b5b1463996708a7c2b51879e4c0aef450014 |
|
MD5 | b56b906d2b7a2039087d684d603e15b1 |
|
BLAKE2b-256 | b0c9c4e73230cf8831b9e7782155cef475813bf09ac4a90cb40770ba8022fc38 |