Skip to main content

Build simple SQL queries fast and clean

Project description

Are you finding yourself writing long strings to build up a SQL query in python to communicate with your SQL database? Then sql_queries is what you are looking for. This package provides you with tools to build simple SQL queries from the ground up, without having to manually type out formatted spaghetti strings over and over again. With this module, you'll no longer need codeblocks like this to write your queries :

field = 'x'
table = 'a'
cond = 10

query = 'SELECT {} FROM {} WHERE {} = {}'.format(field, table, field, cond)

And this is only a simple example. The sql_queries equivalent of the above looks like this:

from sql_query import sql_select

query = sql_select('x', 'a')
query.where(attr='x', cond=10)

A simple SELECT-FROM-WHERE example has been demonstrated above with the sql_select object. This object also supports GROUP BY, HAVING, ORDER BY, LIMIT and JOIN statements. There is also the sql_update object, which supports UPDATE, SET and WHERE statements. Review the documentation to get a better understanding of how to implement these statements. For a quick demo you can also view to one minute demo's to get you started with this module. These can be found on youtube.

Convert a sql_query (sub)object to a string using the build-in str() function to get your SQL query as text. The result can be used directly in for example pandas' pd.read_sql_query() or sqlalchemy's engine.execute(text()) methods.

Known limitations for this version:

  • Exceptions haven't yet been properly implemented.
  • The .join method can only be used in combination with loading plain field (e.g. using COUNT(FieldX) in the SELECT statement will result in an invalid query)
  • The module has only been properly tested with a SQLite3 database.

Tutorial video's

A series of one minute demo's to get started with this module can be found on youtube.

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_queries-0.1.2.tar.gz (7.6 kB view details)

Uploaded Source

Built Distribution

sql_queries-0.1.2-py3-none-any.whl (20.2 kB view details)

Uploaded Python 3

File details

Details for the file sql_queries-0.1.2.tar.gz.

File metadata

  • Download URL: sql_queries-0.1.2.tar.gz
  • Upload date:
  • Size: 7.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/46.1.3 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.7.4

File hashes

Hashes for sql_queries-0.1.2.tar.gz
Algorithm Hash digest
SHA256 7210452ab2c746f84a39b0e29baaeab0c456e207c735ff24db2a62a298809592
MD5 59b9aa189f8b47ed8b2374570e7f40a1
BLAKE2b-256 448b39110589bbe30163ca4533db0833b892c3397a89f9a49e86f511cce574ad

See more details on using hashes here.

File details

Details for the file sql_queries-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: sql_queries-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 20.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/46.1.3 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.7.4

File hashes

Hashes for sql_queries-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 2f98db70aff1dd97975010d9c65359f86d8f46fa535924f8c180241e1b065a27
MD5 c2bd778dec9f54c7ff9e30243f6a39ba
BLAKE2b-256 10d2f51e83260faeea03ddf0c033801a674efc038fc3cb442f74de4c46da2579

See more details on using hashes here.

Supported by

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