纯Python PartiQL 解析器
项目描述
py-partiql-parser
PartiQL语言的标记器/解析器/执行器,使用Python编写。
很多beta版本,非常棒。请随意提出您遇到的任何问题。
S3 使用
import json
from py_partiql_parser import S3SelectParser
original_json = json.dumps({"a1": "b1", "a2": "b2"})
parser = S3SelectParser(source_data={"s3object": original_json})
result = parser.parse("SELECT * FROM s3object")
DynamoDB 使用
import json
from py_partiql_parser import DynamoDBStatementParser
parser = DynamoDBStatementParser(source_data={"table1": {"a1": {"S": "b1"}, "a2": {"S": "b2"}}})
result = parser.parse("SELECT * from table1 WHERE a1 = ?", parameters=[{"S": "b1"}])
内容
这个库的重要逻辑可以在以下位置找到: https://github.com/bblommers/py-partiql-parser/blob/main/py_partiql_parser/_internal/parser.py
它实现为一个简单的、无依赖项、TDD-first的标记器。
突出
- 支持如
count(*)
这样的函数 - 支持CSV转换。在
_internal/csv_converter.py
中已经开始了工作 - 还有很多其他东西。
注意
这个库的第一版是基于以下规范编写的: https://partiql.org/assets/PartiQL-Specification.pdf
AWS并没有遵循自己的规范,最明显的是
- 包含多个JSON文档的列表文件无法正常查询(
select *
返回所有内容,但无法对列表中的每个文档执行select key
) - 不支持
select values
安全联系方式
要报告安全漏洞,请使用Tidelift安全联系方式。Tidelift将协调修复和披露。
项目详情
下载文件
下载适合您平台的文件。如果您不确定选择哪一个,请了解更多关于安装包的信息。
源代码分发
py_partiql_parser-0.5.6.tar.gz (16.9 kB 查看哈希值)
构建分发
关闭
py_partiql_parser-0.5.6.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 6339f6bf85573a35686529fc3f491302e71dd091711dfe8df3be89a93767f97b |
|
MD5 | 1da1951bd65f95628bbd520119391f12 |
|
BLAKE2b-256 | de919d499c960abea0efda9e81aa62bd8dd1eab1daa12db9b3b0064fe2f8b3c7 |
关闭
py_partiql_parser-0.5.6-py2.py3-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 622d7b0444becd08c1f4e9e73b31690f4b1c309ab6e5ed45bf607fe71319309f |
|
MD5 | c69fa405a3098f743a73e4c0d9efa193 |
|
BLAKE2b-256 | 2c2446262d45ee9e54a181c440fe1a3d87fd538d69f10c8311f699e555119d1f |