Files
turso/docs/sqlite-compat.md
Pekka Enberg 7cf3c80323 Update SQLite compatibility document
We don't support `SELECT ... WHERE` so mark it as such.
2024-07-05 20:07:18 +03:00

7.0 KiB

SQLite Compatibility

This document describes the SQLite compatibility status of Limbo:

SQL statements

Statement Status Comment
ALTER TABLE No
ANALYZE No
ATTACH DATABASE No
BEGIN TRANSACTION No
COMMIT TRANSACTION No
CREATE INDEX No
CREATE TABLE No
CREATE TRIGGER No
CREATE VIEW No
CREATE VIRTUAL TABLE No
DELETE No
DETACH DATABASE No
DROP INDEX No
DROP TABLE No
DROP TRIGGER No
DROP VIEW No
END TRANSACTION No
EXPLAIN No
INDEXED BY No
INSERT No
ON CONFLICT clause No
PRAGMA Partial
PRAGMA cache_size   Yes
REINDEX No
RELEASE SAVEPOINT No
REPLACE No
RETURNING clause No
ROLLBACK TRANSACTION No
SAVEPOINT No
SELECT Partial
SELECT ... WHERE No
SELECT ... LIMIT Yes
SELECT ... ORDER BY No
SELECT ... GROUP BY No
SELECT ... JOIN No
UPDATE No
UPSERT No
VACUUM No
WITH clause No

SQL functions

Scalar functions

Function Status Comment
abs(X) No
changes() No
char(X1,X2,...,XN) No
coalesce(X,Y,...) No
concat(X,...) No
concat_ws(SEP,X,...) No
format(FORMAT,...) No
glob(X,Y) No
hex(X) No
ifnull(X,Y) No
iif(X,Y,Z) No
instr(X,Y) No
last_insert_rowid() No
length(X) No
like(X,Y) No
like(X,Y,Z) No
likelihood(X,Y) No
likely(X) No
load_extension(X) No
load_extension(X,Y) No
lower(X) No
ltrim(X) No
ltrim(X,Y) No
max(X,Y,...) No
min(X,Y,...) No
nullif(X,Y) No
octet_length(X) No
printf(FORMAT,...) No
quote(X) No
random() No
randomblob(N) No
replace(X,Y,Z) No
round(X) No
round(X,Y) No
rtrim(X) No
rtrim(X,Y) No
sign(X) No
soundex(X) No
sqlite_compileoption_get(N) No
sqlite_compileoption_used(X) No
sqlite_offset(X) No
sqlite_source_id() No
sqlite_version() No
substr(X,Y,Z) No
substr(X,Y) No
substring(X,Y,Z) No
substring(X,Y) No
total_changes() No
trim(X) No
trim(X,Y) No
typeof(X) No
unhex(X) No
unhex(X,Y) No
unicode(X) No
unlikely(X) No
upper(X) No
zeroblob(N) No

Aggregate functions

Function Status Comment
avg(X) Yes
count() No
count(*) No
group_concat(X) No
group_concat(X,Y) No
string_agg(X,Y) No
max(X) No
min(X) No
sum(X) Yes
total(X) No

Date and time functions

Function Status Comment
date() No
time() No
datetime() No
julianday() No
unixepoch() No
strftime() No
timediff() No

SQLite API

Interface Status Comment
sqlite3_open Partial
sqlite3_close Yes
sqlite3_prepare Partial
sqlite3_finalize Yes
sqlite3_step Yes
sqlite3_column_text Yes