1
Fork 0

update supported_sql page to asciidoc

This commit is contained in:
Jake Wheat 2015-08-08 21:24:18 +03:00
parent 60963de5e0
commit b7d9d92ae7
2 changed files with 34 additions and 23 deletions

View file

@ -13,7 +13,11 @@ cp website/ocean.css build
# index # index
asciidoctor website/index.asciidoc -o build/index.html asciidoctor website/index.asciidoc -o build/index.html
#pandoc --from=markdown --to=html website/index.txt -o build/index.html -c main.css --title=simple-sql-parser --toc #pandoc --from=markdown --to=html website/index.txt -o build/index.html -c main.css --title=simple-sql-parser --toc
pandoc --from=markdown --to=html website/supported_sql.txt -o build/supported_sql.html -c main.css '--title=simple-sql-parser supported SQL' --toc asciidoctor website/supported_sql.asciidoc -o build/supported_sql.html
#pandoc --from=markdown --to=html website/supported_sql.txt -o build/supported_sql.html -c main.css '--title=simple-sql-parser supported SQL' --toc
# tpch sql file # tpch sql file
# pandoc src/tpch.sql -s --highlight-style kate -o tpch.sql.html # pandoc src/tpch.sql -s --highlight-style kate -o tpch.sql.html
# rendered test cases # rendered test cases

View file

@ -1,10 +1,18 @@
# simple-sql-parser supported SQL overview
[simple-sql-parser home](index.html) :toc: right
:sectnums:
:toclevels: 10
:source-highlighter: pygments
= simple-sql-parser supported SQL
== Overview
link:index.html[simple-sql-parser home]
This page has more details on the supported SQL in simple-sql-parser. This page has more details on the supported SQL in simple-sql-parser.
See the [simple-sql-parser test cases](test_cases.html) page for See the link:test_cases.html[simple-sql-parser test cases] page for
examples. examples.
The target dialect of SQL at this time is ISO/ANSI SQL:2011. The The target dialect of SQL at this time is ISO/ANSI SQL:2011. The
@ -24,19 +32,19 @@ Haskell uses, and any encoding/decoding is left to the system. I think
this effectively means that you will usually be using utf-8 character this effectively means that you will usually be using utf-8 character
set for the sql source. set for the sql source.
# Queries == Queries
## Select lists === Select lists
Supports value expressions, aliases with optional 'as'. Supports value expressions, aliases with optional 'as'.
Doesn't support 'select * as (a,b,c) from t' yet. Doesn't support 'select * as (a,b,c) from t' yet.
## Set quantifiers on select === Set quantifiers on select
Supports 'select distinct' and explicit 'select all'. Supports 'select distinct' and explicit 'select all'.
## From clause === From clause
* aliases * aliases
* subqueries * subqueries
@ -50,32 +58,32 @@ Supports 'select distinct' and explicit 'select all'.
- using lists - using lists
- lateral - lateral
## Group by clause === Group by clause
Supports value expressions, group by (), cube, rollup, grouping Supports value expressions, group by (), cube, rollup, grouping
parentheses and grouping sets with nested grouping expressions. parentheses and grouping sets with nested grouping expressions.
## Order by clause === Order by clause
Supports value expressions, asc/desc and nulls first/last. Supports value expressions, asc/desc and nulls first/last.
## Offset and fetch === Offset and fetch
Supports 'offset n rows' and 'fetch first n rows only'. Supports 'offset n rows' and 'fetch first n rows only'.
## Set operators === Set operators
Union, except, intersect + all/distinct and corresponding. Union, except, intersect + all/distinct and corresponding.
## Table value constructor === Table value constructor
For example: values (1,2),(3,4). For example: values (1,2),(3,4).
## Explicit table === Explicit table
For example: 'table t', which is shorthand for 'select * from t'. For example: 'table t', which is shorthand for 'select * from t'.
## Value expressions === Value expressions
The value expressions type and parser is used in many contexts, The value expressions type and parser is used in many contexts,
including: including:
@ -93,8 +101,7 @@ grammars for most of these.
The supported value expressions include: The supported value expressions include:
* basic string literals in single quotes (escapes and other string * basic string literals in single quotes
literal syntaxes coming soon)
* number literals: digits.digitse+-exp * number literals: digits.digitse+-exp
* explicitly typed literal, e.g. int '3' * explicitly typed literal, e.g. int '3'
* binary operators * binary operators
@ -132,7 +139,7 @@ The supported value expressions include:
* parentheses * parentheses
* quoted and unquoted identifiers * quoted and unquoted identifiers
* a.b qualified identifiers * a.b qualified identifiers
* \*, a.\* * \*, a.*
* functions: f(a,b) * functions: f(a,b)
* aggregates: agg(distinct a order by b) * aggregates: agg(distinct a order by b)
* window functions: sum(x) over (partition by y order by z) * window functions: sum(x) over (partition by y order by z)
@ -140,22 +147,22 @@ The supported value expressions include:
* row constructors, e.g. where (a,b) = any (select a,b from t) * row constructors, e.g. where (a,b) = any (select a,b from t)
* ? used in parameterized queries * ? used in parameterized queries
# DDL == DDL
todo todo
# Non-query DML == Non-query DML
todo todo
# Access Control == Access Control
todo todo
# Transaction management == Transaction management
todo todo
# Session management == Session management
todo todo