Skip to main content

A powerful SQL shell with GUI interface for data analysis

Project description

SQLShell

SQLShell Interface

A modern SQL REPL interface for seamless querying of Excel, Parquet, and SQLite databases

SQLShell Interface

🚀 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) and CSV 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)

📦 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

  1. Launch the Application

    sqls
    
  2. Database Connection

    • SQLShell automatically connects to a local DuckDB database named 'pool.db'
  3. Working with Excel Files

    • Click "Browse Excel" to select your file
    • File contents are loaded as 'imported_data' table
    • Query using standard SQL syntax
  4. 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

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

sqlshell-0.1.8.tar.gz (3.7 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

sqlshell-0.1.8-py3-none-any.whl (3.2 MB view details)

Uploaded Python 3

File details

Details for the file sqlshell-0.1.8.tar.gz.

File metadata

  • Download URL: sqlshell-0.1.8.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

Hashes for sqlshell-0.1.8.tar.gz
Algorithm Hash digest
SHA256 c3f8c2f475c9269c3d62fe35aa929b2f2bcab89d35fa51f2f0227622eda961e3
MD5 915bb5a84a7c5cac847d5718691009b9
BLAKE2b-256 175da446a4d6f8b66fb05a894bb932cd2a3d0be06b83f522870005de59a3b769

See more details on using hashes here.

File details

Details for the file sqlshell-0.1.8-py3-none-any.whl.

File metadata

  • Download URL: sqlshell-0.1.8-py3-none-any.whl
  • Upload date:
  • Size: 3.2 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.0

File hashes

Hashes for sqlshell-0.1.8-py3-none-any.whl
Algorithm Hash digest
SHA256 9d44f9ca103121e70818b0ef480b621c3ade65d6c61d2cead709dc2ecce7a242
MD5 943b5ef242c6aefbb94aa72e1aab6f0e
BLAKE2b-256 1176a1f50e49bb230a813c0a45a2080a8ed5b113d44cc0bddd60cfe110e06324

See more details on using hashes here.

Supported by

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