Jake Wheat
3b86a06e5c
implement complete interval literals
2014-04-18 21:38:24 +03:00
Jake Wheat
f64632bbac
support two double quotes in quoted identifier plus unicode quoted identifier syntax
2014-04-18 21:09:46 +03:00
Jake Wheat
4e1a1da820
basic multiset support
2014-04-18 20:50:24 +03:00
Jake Wheat
2ff8580dbf
complete basic typename support
2014-04-18 19:49:00 +03:00
Jake Wheat
fbdcacc604
modify basic typenames to support dotted names in the syntax
...
add syntax for most of the other kinds of typenames
add pretty printing for these
todo: the parsing and the tests
2014-04-18 17:55:56 +03:00
Jake Wheat
b0f1e044b4
refactor some of the multi keyword/ multiword typename parsing
2014-04-18 14:50:54 +03:00
Jake Wheat
2cad424379
change the names in the ast to be lists so can support qualified names
...
everywhere:
TRSimple: replaces the TRQualified
Iden
App name
AggregateApp name
WindowApp name
operator names (not sure if this is used in ansi sql)
explicit table
function in from clause
2014-04-18 11:43:37 +03:00
Jake Wheat
3df87a3cf9
change set quantifier and sort direction to represent default separately
2014-04-18 11:18:21 +03:00
Jake Wheat
c814cc9437
tweak to error message for reserved keyword as identifier
...
add in some group by and order by tests
2014-04-18 10:47:39 +03:00
Jake Wheat
37dca6596b
support character set literals, e.g. N'stuff'
...
support collate postfix operator
support escape and uescape as postfix operators
change the collate support in substring and trim which isn't a special
case in the sql 2003 grammar anymore but just a normal collate postfix
operator, the old code had the collation name as a string, but the
new style is as an identifier
2014-04-18 00:16:24 +03:00
Jake Wheat
211174cfb4
work on array constructors and expressions
2014-04-17 22:57:33 +03:00
Jake Wheat
4cf84eba7b
reenable commented test for quantified comparison predicates
2014-04-17 22:46:21 +03:00
Jake Wheat
d38a5a743a
move the typed literal parser around
...
implement unique predicate, match predicate
change the representation of quantified comparison predicates
2014-04-17 22:35:43 +03:00
Jake Wheat
6720d3e3a3
add support for named host parameters
2014-04-17 19:27:18 +03:00
Jake Wheat
19df6f18aa
don't include unfinished tests in the test suite
...
fix number literals to accept upper case E
implement multi part string literals
fix tests for string literals, typed literals, boolean literals and
number literals in the sql 2003 tests
2014-04-17 19:19:41 +03:00
Jake Wheat
488310ff6a
add some big improvements to parse error messages
...
change the parser to not attempt to parse the elements following
'from' unless there is a actual 'from'
improve the symbol parser to try to deal with issues when symbols are
next to eachother with no intervening whitespaces
improve number literal parsing to fail if there are trailing letters
or digits which aren't part of the number and aren't separated with
whitespace
add some code to start analysing the quality of parse error messages
2014-04-17 18:32:41 +03:00
Jake Wheat
c48b057457
better sql 2003 todo list
2014-04-16 22:37:18 +03:00
Jake Wheat
89015144f9
change the ints in the syntax to be integers
...
partially add buildExprParser hack to deal with some nested prefix and
postfix unary operators
add new file which starts going through the sql2003 grammar to try to
create lots of examples for comprehensive testing of sql2003
support.
replace the lexers with lexers from the tutorial project
2014-04-16 18:58:17 +03:00
Jake Wheat
8b1fa81de7
fix bug in parsing default as all instead of distinct for set operations
2014-04-15 13:47:34 +03:00
Sönke Hahn
2e91fb9e81
Allow qualified names ('schema.table') in from clauses
2014-01-22 15:54:14 +08:00
Jake Wheat
7cf5275615
swap order in select lists so the expression comes first then the alias to match the order in the concrete syntax
2013-12-31 11:31:00 +02:00
jake
9d8c1badbd
give in and use the parsec buildExpressionParser for now
2013-12-31 11:02:26 +02:00
Jake Wheat
40c64c7631
rename qeFetch to qeFetchFirst
2013-12-19 17:50:25 +02:00
Jake Wheat
3b2730fd99
rename ScalarExpr -> ValueExpr which is slightly more standard, add notes on new fixity implementation
2013-12-19 11:46:51 +02:00
Jake Wheat
b68c116839
add support for ? for parameterized queries
2013-12-19 10:44:20 +02:00
Jake Wheat
1be27eca58
rename Duplicates -> SetQuantifier + qeDuplicates -> qeSetQuantifier
2013-12-19 10:34:32 +02:00
Jake Wheat
2ae1ced7cc
rename PrettyIt to SQLIdent and add to cabal
2013-12-19 10:31:27 +02:00
Jake Wheat
b631497a04
renames OrderField->SortSpec, InThing->InPredValue
2013-12-18 16:27:06 +02:00
Jake Wheat
b89f2a011c
fixes for substring, change the abstract syntax for extract and
...
substring, and add the addition operators position, convert,
translate, overlay and trim
2013-12-18 15:51:55 +02:00
Jake Wheat
a53578c6c2
reformat some files
2013-12-17 20:52:13 +02:00
Jake Wheat
60cf309953
fix haddock, hlint, rename Prec2TypeName to PrecScaleTypeName
2013-12-17 20:46:29 +02:00
Jake Wheat
e61672ebf8
hlint
2013-12-17 20:27:11 +02:00
Jake Wheat
9b1bbbf307
add back test for postgres limit syntax, convert tpch queries to ansi fetch first n rows only syntax
2013-12-17 20:04:49 +02:00
Jake Wheat
558d44140a
add support for typenames with precision and scale
2013-12-17 19:52:14 +02:00
Jake Wheat
60d1b446db
add most of the group by tests
2013-12-17 19:44:29 +02:00
Jake Wheat
74c6d39b23
get group by variations working
2013-12-17 19:27:09 +02:00
Jake Wheat
b703e04af3
add syntax for new grouping expressions
2013-12-17 19:17:03 +02:00
Jake Wheat
7d094182b7
add support for multiple case when expressions
2013-12-17 18:42:00 +02:00
Jake Wheat
ebe522b21d
add support for nulls first/last
2013-12-17 18:28:31 +02:00
Jake Wheat
e85ab8b831
add names/docs to some of the scalar expr constuctor fields, add partial support for explicit window frames
2013-12-17 17:29:49 +02:00
Jake Wheat
bfe07dce53
fix the lateral parsing issue and broken test
2013-12-17 16:33:56 +02:00
Jake Wheat
e03090a6a1
add support for rowctor without row, e.g. (1,2)
2013-12-17 16:20:05 +02:00
Jake Wheat
b2728ec9bf
add support for ansi standard offset and fetch syntax
2013-12-17 16:00:17 +02:00
Jake Wheat
8093498f2d
generalize . to a binary operator
2013-12-17 15:21:43 +02:00
Jake Wheat
8adc169b38
add support for '' in string literals
2013-12-17 15:09:28 +02:00
Jake Wheat
72b67166d9
add support for 'table t' syntax
2013-12-17 13:58:44 +02:00
Jake Wheat
4308acb982
add support for with recursive and column aliases in cte
2013-12-17 13:41:06 +02:00
Jake Wheat
c52334943f
add support for values
2013-12-17 13:27:16 +02:00
Jake Wheat
4330b3d7e0
add support for quoted identifiers
2013-12-17 13:21:36 +02:00
Jake Wheat
045f2be825
support simple interval literal interval '3 days' and rename CastOp to TypedLit
2013-12-17 12:51:14 +02:00