Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

sqlquerypp: SQL query preprocessor

sqlquerypp is a library for preprocessing SQL queries. Main purpose is writing highly optimized queries with a simplified syntax, allowing for both maintainability and high performance.

Limitations

Currently, only MySQL 8.4 syntax is supported.

Why preprocess SQL queries?

SQL (Structed Query Language) follows a declarative paradigm, i.e. a query explains "what should be done" not "how should it be done". This stands in contrast to imperative programming, which expresses the "how should a certain task be fulfilled" aspect.

Database systems' internals are responsible for maintaining this aspect. However, for certain and large data structures, writing down "naive" queries sometimes result in poor performance.

Supported performance optimizations

Combined UNION queries

Consider the following original query:

SELECT entity_b.*
FROM entity_b
INNER JOIN entity_a
  ON entity_a.id = entity_b.entity_a_id
  AND entity_a.criteria = 1337;

This is a very simplified example, but if you assume entity_b contains a multitude of items, even correct index conditions may exhaust any DBMS' join buffer.

If network overhead is acceptable, a fitting alternative approach could be a loop on the application side (Python pseudocode):

all_matches_in_entity_b = []
for entity_a_id in [rec.id
                    for rec in mysql_query("SELECT id FROM entity_a "
                                           "WHERE criteria = 1337")]:
    inner_result = mysql_query("SELECT * FROM entity_b "
                               f"WHERE entity_a_id = {entity_a_id}")
    all_matches_in_entity_b += inner_result

The following statement, which is invalid SQL, translates to a MySQL native construct of Recursive Common Table Expression and UNION fragments when compiled by sqlquerypp. This allows for maximal query performance, because the inner query with reduced complexity is still taken into account. At the same time, it grants minimal I/O overhead as only one query is executed on the database:

combined_result (SELECT id FROM entity_a WHERE criteria = 1337) AS $id {
    SELECT * FROM entity_b WHERE entity_a_id = $id;
}

Metadata

Release files for sqlquerypp 0.1.0a6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distributions (wheels)

Table of built distributions (wheels) for sqlquerypp 0.1.0a6
File Actions
sqlquerypp-0.1.0a6-cp314-cp314-musllinux_1_2_x86_64.whl CPython 3.14 CPython 3.14 Linux musl 1.2+ x86-64 Details for sqlquerypp-0.1.0a6-cp314-cp314-musllinux_1_2_x86_64.whl
sqlquerypp-0.1.0a6-cp314-cp314-manylinux_2_28_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.28+ x86-64 Details for sqlquerypp-0.1.0a6-cp314-cp314-manylinux_2_28_x86_64.whl
sqlquerypp-0.1.0a6-cp313-cp313-musllinux_1_2_x86_64.whl CPython 3.13 CPython 3.13 Linux musl 1.2+ x86-64 Details for sqlquerypp-0.1.0a6-cp313-cp313-musllinux_1_2_x86_64.whl
sqlquerypp-0.1.0a6-cp313-cp313-manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.28+ x86-64 Details for sqlquerypp-0.1.0a6-cp313-cp313-manylinux_2_28_x86_64.whl

Total release size: 8.1 MB

Release files / sqlquerypp-0.1.0a6-cp314-cp314-musllinux_1_2_x86_64.whl

Download URL sqlquerypp-0.1.0a6-cp314-cp314-musllinux_1_2_x86_64.whl
Size 2.0 MB
Tags CPython 3.14 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
41ab8f636e5729a43048f00362d1d971105b5180e8e08001a2fa2f3b1344633d
BLAKE2b-256 checksum
How to use checksums
01d6ee4229c50c6f9ba297c6a4656f050428aa16e401bc319d5a87436e04b11b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Apr 10, 2026.

Transparency log

Release files / sqlquerypp-0.1.0a6-cp314-cp314-manylinux_2_28_x86_64.whl

Download URL sqlquerypp-0.1.0a6-cp314-cp314-manylinux_2_28_x86_64.whl
Size 2.0 MB
Tags CPython 3.14 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
8489258287a58dba0a1f7dcfc70629e2b28245381eea21409e23ab22b32e78cb
BLAKE2b-256 checksum
How to use checksums
1a934c0085a01ea0985f0337da9a4817ed70b84cfcf2ae5d0068973244045ced
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Apr 10, 2026.

Transparency log

Release files / sqlquerypp-0.1.0a6-cp313-cp313-musllinux_1_2_x86_64.whl

Download URL sqlquerypp-0.1.0a6-cp313-cp313-musllinux_1_2_x86_64.whl
Size 2.0 MB
Tags CPython 3.13 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
9163eefb7eeff1b1d5b4330f134b2a5d6fe9e4ba3726d12a77ada1b3c7fd46cb
BLAKE2b-256 checksum
How to use checksums
b40b6d9ae9d56843838235c74d6e65cc9f3c89d7efbb3e2017d397d966399eae
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Apr 10, 2026.

Transparency log

Release files / sqlquerypp-0.1.0a6-cp313-cp313-manylinux_2_28_x86_64.whl

Download URL sqlquerypp-0.1.0a6-cp313-cp313-manylinux_2_28_x86_64.whl
Size 2.0 MB
Tags CPython 3.13 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
6fe621fedb3819d8a2b0b987ec05b0a2afcd9b0f6f41ecd37be977040be70370
BLAKE2b-256 checksum
How to use checksums
33f8479729c6a063d20317f0a2f1d36c3a995fa4e815dc352e239d4637786373
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Apr 10, 2026.

Transparency log

Security for sqlquerypp 0.1.0a6

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 4 files in this release have been uploaded with provenance metadata.

Select from 4 files

Attestation for sqlquerypp-0.1.0a6-cp314-cp314-musllinux_1_2_x86_64.whl

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Apr 10, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page