Skip to content

v0.1.4

Choose a tag to compare

@edadma edadma released this 21 Feb 01:50
· 438 commits to dev since this release

What's New

SQL Compatibility

  • Case-insensitive keywords — SELECT, select, Select all work
  • Unquoted identifier folding — identifiers fold to lowercase like PostgreSQL
  • Double-quoted identifiers — "MixedCase" preserves case
  • <> operator — SQL-standard not-equal (in addition to !=)
  • CAST(expr AS type) — SQL-standard cast syntax (in addition to ::)
  • Standard string escaping — doubled single quotes ('it''s')

New SQL Statements

  • TRUNCATE TABLE — fast table reset, resets serial sequences, enforces FK constraints
  • CREATE TABLE IF NOT EXISTS
  • INSERT INTO ... SELECT — insert rows from a query
  • UPDATE ... FROM — bulk updates with join semantics (PostgreSQL-compatible)
  • Prepared statements — PREPARE, EXECUTE with $N parameters, DEALLOCATE

Query Features

  • LATERAL joins — correlated subqueries in FROM clauses
  • Column aliases on FROM sources — AS alias (col1, col2, ...) syntax
  • OVERLAPS — date/time range overlap test
  • = ANY(...) — array membership test

Foreign Keys & Indexes

  • Foreign key enforcement — ON DELETE / ON UPDATE with CASCADE, SET NULL, SET DEFAULT, RESTRICT
  • Composite index scans — multi-column index support
  • IN/ANY index scans — index-assisted lookups for IN and = ANY() predicates

Functions

  • starts_with(text, prefix), ends_with(text, suffix)
  • variance, var_samp, var_pop, stddev, stddev_samp, stddev_pop