Skip to content

Commit

Permalink
standards
Browse files Browse the repository at this point in the history
  • Loading branch information
joocer committed Dec 31, 2023
1 parent 8f8250d commit 856c66d
Show file tree
Hide file tree
Showing 2 changed files with 26 additions and 24 deletions.
40 changes: 20 additions & 20 deletions docs/get-started/external-standards/sql92.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,9 @@ Opteryx is not a DBMS, so only aims for confirmity to the subset of SQL-92 for t
Function | Description | Support
:------- | :-------------------------------------------------------- | :---------
**E011** | **Numeric data types** | partial
E011-01 | `INTEGER` and `SMALLINT` data types | yes
E011-01 | `INTEGER` and `SMALLINT` data types | partial
E011-02 | `REAL`, `DOUBLE PRECISION`, and `FLOAT` data types | partial
E011-03 | `DECIMAL` and `NUMERIC` data | unknown
E011-03 | `DECIMAL` and `NUMERIC` data | yes
E011-04 | Arithmetic | yes
E011-05 | Numeric comparison | yes
E011-06 | Implicit casting among the numeric data types | yes
Expand All @@ -25,28 +25,28 @@ E021-05 | `OCTET_LENGTH` | no
E021-06 | `SUBSTRING` function | partial
E021-07 | Character concatenation | yes
E021-08 | `UPPER` and `LOWER` functions | yes
E021-09 | `TRIM` function | yes
E021-09 | `TRIM` function | partial
E021-10 | Implicit casting among the fixed-length and variable-length character string types | unknown
E021-11 | `POSITION` function | partial
E021-12 | Character comparison | yes
**E031** | **Identifiers** | unknown
E031-01 | Delimited identifiers | unknown
E031-01 | Delimited identifiers | yes
E031-02 | Lower case identifiers | unknown
E031-03 | Trailing underscore | unknown
**E051** | **Basic query specification** | unknown
E051-01 | `SELECT DISTINCT` | unknown
E051-02 | `GROUP BY` clause | unknown
E051-04 | `GROUP BY` can contain columns not in select-list | unknown
E051-05 | Select list items can be renamed | unknown
E051-06 | `HAVING` clause | unknown
E051-07 | Qualified `*` in select list | unknown
E051-01 | `SELECT DISTINCT` | yes
E051-02 | `GROUP BY` clause | yes
E051-04 | `GROUP BY` can contain columns not in select-list | yes
E051-05 | Select list items can be renamed | yes
E051-06 | `HAVING` clause | yes
E051-07 | Qualified `*` in select list | yes
E051-08 | Correlation names in the `FROM` clause | unknown
E051-09 | Rename columns in the `FROM` clause | unknown
**E061** | **Basic predicates and search conditions** | unknown
E061-01 | Comparison predicate | unknown
E061-02 | `BETWEEN` predicate | unknown
E061-03 | `IN` predicate with list of values | unknown
E061-04 | `LIKE` predicate | unknown
E061-04 | `LIKE` predicate | yes
E061-05 | `LIKE` predicate: `ESCAPE` clause | unknown
E061-06 | `NULL` predicate | unknown
E061-07 | Quantified comparison predicate | unknown
Expand All @@ -60,7 +60,7 @@ E061-14 | Search condition | unknown
E071-01 | `UNION DISTINCT` table operator | no
E071-02 | `UNION ALL` table operator | no
E071-03 | `EXCEPT DISTINCT` table operator | no
E071-05 | Columns combined via table operators need not have exactly the same data type | unknown
E071-05 | Columns combined via table operators need not have exactly the same data type | partial
E071-06 | Table operators in subqueries | unknown
**E081** | **Basic Privileges** | unknown
E081-01 | `SELECT` privilege at the table level | unknown
Expand All @@ -80,7 +80,7 @@ E091-03 | `MAX` | yes
E091-04 | `MIN` | yes
E091-05 | `SUM` | yes
E091-06 | `ALL` quantifier | unknown
E091-07 | `DISTINCT` quantifier | unknown
E091-07 | `DISTINCT` quantifier | yes
**E101** | **Basic data manipulation** | n/a
E101-01 | `INSERT` statement | n/a
E101-03 | Searched `UPDATE` statement | n/a
Expand All @@ -90,7 +90,7 @@ E101-04 | Searched `DELETE` statement | n/a
E121-01 | `DECLARE CURSOR` | no
E121-02 | `ORDER BY` columns need not be in select | yes
E121-03 | Value expressions in `ORDER BY` clause | unknown
E121-04 | `OPEN` statement | unknown
E121-04 | `OPEN` statement | no
E121-06 | Positioned `UPDATE` statement | no
E121-07 | Positioned `DELETE` statement | no
E121-08 | `CLOSE` statement | no
Expand Down Expand Up @@ -140,24 +140,24 @@ F041-04 | `RIGHT OUTER JOIN` | unknown
F041-05 | Outer joins can be nested | unknown
F041-07 | The inner table in a left or right outer join can also be used in an inner join | unknown
F041-08 | All comparison operators are supported (rather than just `=`) | unknown
**F051** | **Basic date and time** | unknown
**F051** | **Basic date and time** | yes
F051-01 | `DATE` data type (including support of `DATE` literal) | unknown
F051-02 | `TIME` data type (including support of `TIME` literal) with fractional seconds | unknown
F051-03 | `TIMESTAMP` data type (including support of `TIMESTAMP` literal) with fractional seconds precision of at least 0 and 6 | unknown
F051-03 | `TIMESTAMP` data type (including support of `TIMESTAMP` literal) with fractional seconds precision of at least 0 and 6 | yes
F051-04 | Comparison predicate on `DATE`, `TIME`, and `TIMESTAMP` data types | partial
F051-05 | Explicit `CAST` between datetime types and character string types | unknown
F051-06 | `CURRENT_DATE` | yes
F051-07 | `LOCALTIME` | unknown
F051-07 | `LOCALTIME` | yes
F051-08 | `LOCALTIMESTAMP` | unknown
**F081** | **`UNION` and `EXCEPT` in views** | unknown
**F131** | **Grouped operations** | unknown
F131-01 | `WHERE`, `GROUP BY`, and `HAVING` clauses supported in queries with grouped views | unknown
F131-02 | Multiple tables supported in queries with grouped views | unknown
F131-01 | `WHERE`, `GROUP BY`, and `HAVING` clauses supported in queries with grouped views | yes
F131-02 | Multiple tables supported in queries with grouped views | yes
F131-03 | Set functions supported in queries with grouped views | unknown
F131-04 | Subqueries with `GROUP BY` and `HAVING` clauses and grouped views | unknown
F131-05 | Single row `SELECT` with `GROUP BY` and `HAVING` clauses and grouped views | unknown
**F181** | **Multiple module support** | unknown
**F201** | **`CAST` function** | unknown
**F201** | **`CAST` function** | yes
**F221** | **Explicit defaults** | unknown
**F261** | **`CASE` expression** | yes
F261-01 | Simple `CASE` | yes
Expand Down
10 changes: 6 additions & 4 deletions docs/get-started/external-standards/tpch.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@

Query | Modified | Pass
:------ | :------- | :-----
query1 | no | yes
query1 | no | no
query2 | yes | no
query3 | no | no
query4 | no | no
Expand All @@ -18,18 +18,20 @@ query8 | no | no
query9 | no | no
query10 | no | no
query11 | yes | no
query12 | no | no
query12 | no | yes
query13 | no | no
query14 | no | unknown
query14 | no | no
query15 | yes | no
query16 | no | no
query17 | no | no
query18 | yes | no
query19 | no | unknown
query19 | no | yes :octicons-dot-16:
query20 | no | no
query21 | yes | no
query22 | yes | no

> :octicons-dot-16: query doesn't complete within a reasonable time
All queries have been modified to refer to the location of the datasets, **modified** in the above table is where the SQL has been written to replace unsupported functionality with supported functionality - this is where the original query either created a view or a temporary table, both of these have been replaced with a CTE definition.

The test suite for this benchmark is in the [Opteryx Benchmarking](https://github.com/mabel-dev/wrenchy-bench) repository.
Expand Down

0 comments on commit 856c66d

Please sign in to comment.