Skip to content

binrchq/clickhouse-cli

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ClickHouse CLI

Go Reference Go Report Card License: MIT

A standalone ClickHouse interactive CLI client for Go applications.

Features

  • 🚀 Full ClickHouse SQL support
  • 📊 Vertical/Horizontal display modes
  • ⏱️ Query timing
  • 💾 Connection pooling
  • 🎯 System tables support
  • 📈 Optimized for analytical queries

Installation

go get github.com/binrchq/clickhouse-cli

Quick Start

package main

import (
    "log"
    "os"
    
    clickhousecli "github.com/binrchq/clickhouse-cli"
)

func main() {
    cli := clickhousecli.NewCLI(
        os.Stdin,
        "localhost",
        9000,
        "default",
        "password",
        "default",
    )
    
    if err := cli.Connect(); err != nil {
        log.Fatal(err)
    }
    defer cli.Close()
    
    if err := cli.Start(); err != nil {
        log.Fatal(err)
    }
}

Supported Commands

SQL Commands

  • SELECT - Query (with complex analytics support)
  • INSERT - Insert data
  • CREATE TABLE - Create table
  • DROP TABLE - Delete table
  • OPTIMIZE TABLE - Optimize table

System Tables

SELECT * FROM system.databases
SELECT * FROM system.tables
SELECT * FROM system.processes
SELECT * FROM system.query_log

Special Commands

  • USE <database> - Switch database
  • SHOW DATABASES - List databases
  • SHOW TABLES - List tables
  • DESCRIBE TABLE - Describe table
  • help - Show help
  • timing - Toggle timing
  • vertical - Toggle vertical output

Requirements

  • Go 1.21 or higher
  • ClickHouse 20.3 or higher

Dependencies

License

MIT License - see LICENSE file for details.

Author

Maintained by binrc.

Related Projects

About

Database CLI for CLICKHOUSE

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages