Skip to content
/ sqlean Public
forked from nalgeon/sqlean

All the missing SQLite functions

License

Notifications You must be signed in to change notification settings

iCodeIN/sqlean

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SQLean: all the missing SQLite functions

SQLite has very few functions compared to other DBMS. SQLite authors see this as a feature rather than a bug, because SQLite has extension mechanism in place.

There are a lot of SQLite extensions out there, but they are incomplete, inconsistent and scattered across the internet.

sqlean brings them all together, neatly packaged by domain modules and built for Linux, Windows and macOS.

Here is what we've got right now:

  • json1: JSON functions
  • math: math functions
  • re: regular expressions
  • stats: statistical functions
  • vsv: CSV files as virtual tables
  • unicode: Unicode string functions

Download

There are precompiled binaries for every OS:

  • *.dll - for Windows
  • *.so - for Linux
  • *.dylib - for macOS

Usage

CLI usage:

sqlite> .load ./stats
sqlite> select median(value) from generate_series(1, 100);

IDE usage:

select load_extension('/path/to/extension/stats');
select median(value) from generate_series(1, 100);

In-app usage:

import sqlite3

connection = sqlite3.connect(":memory:")
connection.enable_load_extension(True)
connection.load_extension("./stats.so")
connection.execute("select median(value) from generate_series(1, 100)")
connection.close()

You can specify any other supported extension instead of stats.

About

All the missing SQLite functions

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C 100.0%