Skip to main content

Convert raw SQL to Pypika Objects

Project description

sql_to_pypika

Tests Status codecov Code style: black

Helper util for converting raq SQL expressions to PyPika objects. This is neither comprehensive nor perfect. My hope with creating a repo for this is that if people are interested then we can expand on this from here.

Usage

tables = [("foo", "foo"), ("bar", "b")]
evaluator = ExpressionEvaluator(tables)
result = evaluator.eval("foo.fizz = 1")

print(result)  # "foo"."fizz"=1'
type(result)   # pypika.terms.BasicCriterion

result = evaluator.eval("bar.fizz = 1")
print(result)  # "b"."fizz"=1'
type(result)   # pypika.terms.BasicCriterion

Disclaimer

The logic was initially created by @twheys, the creator of PyPika (gist) via this conversation.

I went ahead and cleaned it up and added some tests so I could use it for my own needs.

Dev / CI

This repo utilize Poetry, for package management. I recommend reading the Poetry install instructions here.

You can then simply run:

poetry install

We use pytest and Black for testing and linting respectively. You can use the scripts in the scripts folder to run them.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sql_to_pypika-0.1.3.tar.gz (8.5 kB view hashes)

Uploaded Source

Built Distribution

sql_to_pypika-0.1.3-py3-none-any.whl (9.0 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page