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 hashes)

Uploaded source

Built Distribution

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

Uploaded py3

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