playing SQL directly on Python datas
Project description
baresql : playing SQL directly on Python datas
- baresql improves sql agility of python data science beginners by :
allowing sql over python objects (list, ranges, …) and SQL Tables,
requiring no special module except : pandas.
Inspiration :
pypi.python.org/pypi/pandasql : sqldf for pandas
pypi.python.org/pypi/ipython-sql : sql magic in Ipython
Features
query lists , tuple, dictionnaries, dataframes
result as a dataframe, list of records, or list
basic Common Table Expression support on old python3.3- versions
Installation
You can install, upgrade, uninstall sqlite_bro.py with these commands:
$ pip install baresql $ pip install --upgrade baresql $ pip uninstall baresql
or just launch it from IPython with %load https://raw.githubusercontent.com/stonebig/baresql/master/baresql/baresql.py
Basic Example
from __future__ import print_function, unicode_literals, division # if Python2.7 from baresql import baresql bsql = baresql.baresql(keep_log = True ) bsqldf = lambda q: bsql.df(q, dict(globals(),**locals())) users = ['Alexander', 'Bernard', 'Charly', 'Danielle', 'Esmeralda', 'Franz'] # We use the python 'users' list like a SQL table sql = "select 'Welcome ! ' , c0 from users$$" bsqldf(sql)
Examples
http://nbviewer.ipython.org/github/stonebig/baresql/blob/master/examples/baresql_with_cte.ipynb
Links
Changelog
2016-09-18a : v0.7.4 ‘pandas walk’
bug fix: pandas 0.19 compatibility fix
older versions :
0.7.3 : Python keyword is ‘pass’, not ‘Pass’
0.7.2 : support space in dataframe column title
0.7.1 : cleanups
0.7.0 : support of pandas 0.14 sqlalchemy
0.6.6 : sqlite_py_manager.py browser added functions and fix, fix tokenizer error in baresql
0.6.4 : minimal compatibility of sqlite_py_manager.py with old versions : python 2.7 and sqlite 3.6.21
0.6.1 : a pure standard-installation Python SQLite browser in examplessqlite_py_manager.py
0.6 : first version with correct mysql support
0.5.1 : bug correction + SQLite3.8.3 beta from 2013-01-22
0.5 : use SQLite true CTE if SQLite >= 3.8.3
0.4.1 : inline CTE when syntax is “with x as (y)”
0.4 : rewrite with token
0.3.2 : support comments in the SQL
0.3 : includes a basic CTE
0.2 : add “range(10)” iterable object support
0.1 : initial version
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
Built Distribution
File details
Details for the file baresql-0.7.4.tar.gz
.
File metadata
- Download URL: baresql-0.7.4.tar.gz
- Upload date:
- Size: 9.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 797daa263ac1f826394318c27090afca665663750d58a5f9fb9cd98c16eaf2b1 |
|
MD5 | a0e35f87188bcdcbb8571eb8e639121f |
|
BLAKE2b-256 | c514ba7e63228dfd8ea9f1b7070ed2f245d8a9abcdeaaee3d130ee866f9cfc6e |
File details
Details for the file baresql-0.7.4-py2.py3-none-any.whl
.
File metadata
- Download URL: baresql-0.7.4-py2.py3-none-any.whl
- Upload date:
- Size: 11.8 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ce2de6460484858da32111d50989b4676fad156ecb7feb8321f7a71ab742e2f1 |
|
MD5 | 68b9aa1042e9fd1183bc78ce378607b3 |
|
BLAKE2b-256 | e1c63b1365915b1bbddab55ec44416829614fd1185e9d1c88d7dcf5153a6e8d1 |