15.5 SSQL

The concept of SSQL is to write SQL in s-expression.

Usage:

(->sql sql-statement)
(where #:key val ... [literal string])
(having #:key val ... [literal string])
(/or conds ...)
(/and conds ...)

For example:

(->sql select * from 'Persons (where #:city "Tokyo"))
(->sql select '(age name) from 'Persons (where "age < 30"))

The SQL update command is quite different to SQL grammar. Example:

(->sql update 'table set (list (list phone_number "08080001234")) (where #:name "john"))