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.1.tar.gz (8.3 kB view details)

Uploaded Source

Built Distribution

sql_to_pypika-0.1.1-py3-none-any.whl (8.9 kB view details)

Uploaded Python 3

File details

Details for the file sql_to_pypika-0.1.1.tar.gz.

File metadata

  • Download URL: sql_to_pypika-0.1.1.tar.gz
  • Upload date:
  • Size: 8.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.12 CPython/3.8.8 Darwin/20.6.0

File hashes

Hashes for sql_to_pypika-0.1.1.tar.gz
Algorithm Hash digest
SHA256 988edd6aad35b15f006002f1deb825c701ef03ff0610a1594c0c7c0a3576c4d5
MD5 baab3ff755d8f7867350550f9675ebd1
BLAKE2b-256 a33bd7a0ba026c317d94eab0c6863cf484eac17918745a22bd75aab0f7690422

See more details on using hashes here.

File details

Details for the file sql_to_pypika-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: sql_to_pypika-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 8.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.12 CPython/3.8.8 Darwin/20.6.0

File hashes

Hashes for sql_to_pypika-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 23155ca0144368667c042435f0f08f88300236f178879c32f3c75023bd0e82b5
MD5 0850767919b2cf08ac3a29f0dbb6c50b
BLAKE2b-256 8f762942c826b8239c25cd2e5ab71921a7e7626034d6bc5b04417a18cd700b58

See more details on using hashes here.

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