A powerful SQL shell with GUI interface for data analysis
Project description
SQLShell
A modern SQL REPL interface for seamless querying of Excel, Parquet, and SQLite databases
🚀 Key Features
- Interactive SQL Interface - Rich syntax highlighting for enhanced query writing
- DuckDB Integration - Built-in support for local DuckDB database (pool.db)
- Multi-Format Support - Import and query Excel (.xlsx, .xls), CSV, and Parquet files effortlessly
- Modern UI - Clean, tabular results display with intuitive controls
- Productivity Tools - Streamlined workflow with keyboard shortcuts (e.g., Ctrl+Enter for query execution)
- Professional Design - Human-readable interface with optimized graphics
📦 Installation
Linux Setup with Virtual Environment
# Create and activate virtual environment
python3 -m venv ~/.venv/sqlshell
source ~/.venv/sqlshell/bin/activate
# Install SQLShell
pip install sqlshell
# Configure shell alias
echo 'alias sqls="~/.venv/sqlshell/bin/sqls"' >> ~/.bashrc # or ~/.zshrc for Zsh
source ~/.bashrc # or source ~/.zshrc
Windows Quick Start
SQLShell is immediately available via the sqls command after installation:
pip install sqlshell
🎯 Getting Started
-
Launch the Application
sqls
-
Database Connection
- SQLShell automatically connects to a local DuckDB database named 'pool.db'
-
Working with Data Files
- Click "Load Files" to select your Excel, CSV, or Parquet files
- File contents are loaded as queryable SQL tables
- Query using standard SQL syntax
-
Query Execution
- Enter SQL in the editor
- Execute using Ctrl+Enter or the "Execute" button
- View results in the structured output panel
📝 Query Examples
Basic Join Operation
SELECT *
FROM sample_sales_data cd
INNER JOIN product_catalog pc ON pc.productid = cd.productid
LIMIT 3;
Multi-Statement Queries
-- Create a temporary view
CREATE OR REPLACE TEMPORARY VIEW test_v AS
SELECT *
FROM sample_sales_data cd
INNER JOIN product_catalog pc ON pc.productid = cd.productid;
-- Query the view
SELECT DISTINCT productid
FROM test_v;
💡 Pro Tips
- Use temporary views for complex query organization
- Leverage keyboard shortcuts for efficient workflow
- Explore the multi-format support for various data sources
- Create multiple tabs for parallel query development
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
sqlshell-0.1.9.tar.gz
(3.7 MB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file sqlshell-0.1.9.tar.gz.
File metadata
- Download URL: sqlshell-0.1.9.tar.gz
- Upload date:
- Size: 3.7 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
adab2a8f9342f56692c44c5cea657320f0940da81747cd860064a0ef935003a1
|
|
| MD5 |
daa6388c8636aada2b15cd57d21afba4
|
|
| BLAKE2b-256 |
90e090647e432e5963488b4d74c79909cc4f9527756535bbed269ea2325605ef
|
File details
Details for the file sqlshell-0.1.9-py3-none-any.whl.
File metadata
- Download URL: sqlshell-0.1.9-py3-none-any.whl
- Upload date:
- Size: 3.3 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9311852e23f4d8064fef6b911aa514ea1a6b6d20b78bc5102c4c258520665806
|
|
| MD5 |
d1ec0fa5e378cd4564af82a90c97687b
|
|
| BLAKE2b-256 |
b7bdcd0d257d9cfbe796c15cc479b27c4e061357db52fb7ff7c0d958a4c4c461
|