{ "info": { "author": "Colin Deasy", "author_email": "coldeasy@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "License :: OSI Approved :: Apache Software License", "Natural Language :: English", "Programming Language :: Python", "Programming Language :: Python :: 2.6", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Topic :: Database", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "py-sql-query\n============\n\npy-sql-query is a basic SQL translation layer in\npython. You construct queries using mainly python constructs which later can be\nserialized to a SQL query.\n\nExamples\n--------\n\nA simple select statement\n~~~~~~~~~~~~~~~~~~~~~~~~~\n\n.. code-block:: python\n\n >>> from sqlquery.queryapi import select\n >>> select(\"id\").on_table(\"users\").where((\"id__eq\", 2)).sql()\n (u'SELECT `a`.`id` FROM `users` AS `a` WHERE (`a`.`id` = %s)', (2,))\n\nA simple update statement\n~~~~~~~~~~~~~~~~~~~~~~~~~\n.. code-block:: python\n\n >>> from sqlquery.queryapi import update\n >>> update(username=\"john\").on_table(\"users\").where((\"id__eq\", 2)).sql()\n (u'UPDATE `users` AS `a` SET `a`.`username` = %s WHERE (`a`.`id` = %s)', ('john', 2))\n\nA simple insert statement\n~~~~~~~~~~~~~~~~~~~~~~~~~\n.. code-block:: python\n\n >>> from sqlquery.queryapi import insert\n >>> insert(username=\"john\", id=4).on_table(\"users\").sql()\n (u'INSERT INTO `users` (`username`, `id`) VALUES (%s, %s)', ('john', 4))\n\nA simple order by statement\n~~~~~~~~~~~~~~~~~~~~~~~~~~~\n.. code-block:: python\n\n >>> from sqlquery.queryapi import select\n >>> select(\"id\").on_table(\"users\").order_by(\"id\").sql()\n (u'SELECT `a`.`id` FROM `users` AS `a` ORDER BY `a`.`id`', ())\n\nUsing a function\n~~~~~~~~~~~~~~~~\n.. code-block:: python\n\n >>> from sqlquery.queryapi import select, IF, Literal\n >>> select(IF((\"id__lt\", Literal(0)), \"id\", \"newID\")).on_table(\"users\").order_by(\"id\").sql()\n (u'SELECT IF((`a`.`id` < 0), `a`.`id`, `a`.`newID`) FROM `users` AS `a` ORDER BY `a`.`id`', ())\n\nA subquery\n~~~~~~~~~~\n.. code-block:: python\n\n >>> from sqlquery.queryapi import select\n >>> select(\n \"username\", \"id\"\n ).on_table(\"users\").where(\n (\"id__in\", select(\"id\").on_table(\"banned_users\"))\n ).sql()\n (u'SELECT `a`.`username`, `a`.`id` FROM `users` AS `a` WHERE (`a`.`id` IN (SELECT `b`.`id` FROM `banned_users` AS `b`))',\n ())\n\n\nA more involved statement\n~~~~~~~~~~~~~~~~~~~~~~~~~\n.. code-block:: python\n\n >>> from sqlquery.queryapi import select\n >>> select(\n \"username\", \"id\", \"contactinfo.address\"\n ).on_table(\"users\").join(\n \"contactinfo\",\n \"id\",\n ).where(\n ('id__in', [1, 2, 3, 4]), ('contactinfo.country__eq', 'US')\n ).limit(10).offset(10).order_by(\"id\").sql()\n (u'SELECT `a`.`username`, `a`.`id`, `b`.`address` FROM `users` AS `a` INNER JOIN `contactinfo` AS `b` ON `a`.`id` = `b`.`id` WHERE (`a`.`id` IN (%s,%s,%s,%s)) AND (`b`.`country` = %s) ORDER BY `a`.`id` OFFSET %s LIMIT %s',\n (1, 2, 3, 4, 'US', 10, 10))", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/coldeasy/py-sql-query", "keywords": null, "license": "Apache 2.0", "maintainer": null, "maintainer_email": null, "name": "sqlquery", "package_url": "https://pypi.org/project/sqlquery/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/sqlquery/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/coldeasy/py-sql-query" }, "release_url": "https://pypi.org/project/sqlquery/1.1.0/", "requires_dist": null, "requires_python": null, "summary": "SQL query translation.", "version": "1.1.0" }, "last_serial": 1488944, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "8d089a8fff65fd9718435b59d4e077d2", "sha256": "9362b3054927789fae45d697234b3e5c0f2440dc29f5533e6962510e8ec8bad9" }, "downloads": -1, "filename": "sqlquery-0.0.1.tar.gz", "has_sig": false, "md5_digest": "8d089a8fff65fd9718435b59d4e077d2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9665, "upload_time": "2015-01-20T16:02:46", "url": "https://files.pythonhosted.org/packages/e9/32/c932375fa9662f3631ed95d0db53f12570a0d03a6378a284b7bcc38a242d/sqlquery-0.0.1.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "9013c97b0928219f7dd8fd58d382dc43", "sha256": "c6223c954b405dd909e8eb6fd8afeddb47d239589b60d52ecc97c22de6374ccf" }, "downloads": -1, "filename": "sqlquery-0.0.2.tar.gz", "has_sig": false, "md5_digest": "9013c97b0928219f7dd8fd58d382dc43", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9933, "upload_time": "2015-01-21T22:01:55", "url": "https://files.pythonhosted.org/packages/61/f1/4ec62cb781f558b0a0172787d32a165b113990e9e736b3c8dfb4485e82d1/sqlquery-0.0.2.tar.gz" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "d43a2b144a8cb486040d4483dbee2e30", "sha256": "83a123d1efc25731a8ede19063beb2ff31e2a41c0ed43688851cb26a93db9445" }, "downloads": -1, "filename": "sqlquery-0.0.3.tar.gz", "has_sig": false, "md5_digest": "d43a2b144a8cb486040d4483dbee2e30", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10423, "upload_time": "2015-01-22T19:27:19", "url": "https://files.pythonhosted.org/packages/95/2e/6dc382e27b1f3d5ca86c0f6d0fb932eaef98944785db2d6e78bb3753e30f/sqlquery-0.0.3.tar.gz" } ], "0.0.4": [ { "comment_text": "", "digests": { "md5": "bae76d2595c0c820427937f03f387c34", "sha256": "74c2e5972fc78568a0021f4f99eb0bdf3c7a1e487d51d2ecffa0cbe55da24dd1" }, "downloads": -1, "filename": "sqlquery-0.0.4.tar.gz", "has_sig": false, "md5_digest": "bae76d2595c0c820427937f03f387c34", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10576, "upload_time": "2015-01-22T23:55:42", "url": "https://files.pythonhosted.org/packages/93/60/5cca75b205b46f588f6e8adc20dc55ca8c31e753293e0f69fb0399af4f12/sqlquery-0.0.4.tar.gz" } ], "0.1.0": [ { "comment_text": "", "digests": { "md5": "f13dc60285480c1bdfc0e281c126c544", "sha256": "c561eed587bb34d1c95cdaacf9c5e3c5d7bcfa2c3137fc55d0ef6dd46a7e087b" }, "downloads": -1, "filename": "sqlquery-0.1.0.tar.gz", "has_sig": false, "md5_digest": "f13dc60285480c1bdfc0e281c126c544", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10541, "upload_time": "2015-01-23T15:49:08", "url": "https://files.pythonhosted.org/packages/cb/3a/9535fa9b780574c44e4733c8ca7b184c316dcb1b5ecc56f17b5004665c72/sqlquery-0.1.0.tar.gz" } ], "1.0.0": [ { "comment_text": "", "digests": { "md5": "f6ce2eae01a48beb81f4d32abf2c3143", "sha256": "86f692ef3cdd88365c8fade7e47def8355c183e03a5d364db6b1dadd5af359bd" }, "downloads": -1, "filename": "sqlquery-1.0.0.tar.gz", "has_sig": false, "md5_digest": "f6ce2eae01a48beb81f4d32abf2c3143", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10760, "upload_time": "2015-02-19T16:11:06", "url": "https://files.pythonhosted.org/packages/9c/96/280e1a7932347766675984a98575bf2a67e3f2d964e9a3ade14e918434d3/sqlquery-1.0.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "3016cfc44c27c784bdc393ea088a2ef0", "sha256": "41e9657ed6237ea613c62528cfb88f41253000a35d4982cd679aa2cd157ea2ab" }, "downloads": -1, "filename": "sqlquery-1.0.1.tar.gz", "has_sig": false, "md5_digest": "3016cfc44c27c784bdc393ea088a2ef0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10640, "upload_time": "2015-03-11T21:59:05", "url": "https://files.pythonhosted.org/packages/8c/2d/6db5cabf3951e15c5e99fadfb7f0b50116a68d6c6cb415872a3746b77db1/sqlquery-1.0.1.tar.gz" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "c538ac91ec5104ac65f023c2b19b7894", "sha256": "01cd4a2fc8f876da029bdef052a667f0aa6e478e2611b3446f9826795e8d670b" }, "downloads": -1, "filename": "sqlquery-1.1.0.tar.gz", "has_sig": false, "md5_digest": "c538ac91ec5104ac65f023c2b19b7894", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11628, "upload_time": "2015-04-02T22:36:13", "url": "https://files.pythonhosted.org/packages/45/23/cc2c98adc68d0779714e1b303e1999e42f1b89f9178ef65ab421c52fce0b/sqlquery-1.1.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "c538ac91ec5104ac65f023c2b19b7894", "sha256": "01cd4a2fc8f876da029bdef052a667f0aa6e478e2611b3446f9826795e8d670b" }, "downloads": -1, "filename": "sqlquery-1.1.0.tar.gz", "has_sig": false, "md5_digest": "c538ac91ec5104ac65f023c2b19b7894", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11628, "upload_time": "2015-04-02T22:36:13", "url": "https://files.pythonhosted.org/packages/45/23/cc2c98adc68d0779714e1b303e1999e42f1b89f9178ef65ab421c52fce0b/sqlquery-1.1.0.tar.gz" } ] }