comparison src/urweb.grm @ 1682:ac141fbb313a

'ORDER BY RANDOM' (based on a patch from Ron de Bruijn)
author Adam Chlipala <adam@chlipala.net>
date Thu, 02 Feb 2012 11:40:10 -0500
parents 570636457047
children 9dd8d47c3e58
comparison
equal deleted inserted replaced
1681:e8a84494d2c0 1682:ac141fbb313a
274 | SELECT | DISTINCT | FROM | AS | CWHERE | GROUP | ORDER | BY | HAVING 274 | SELECT | DISTINCT | FROM | AS | CWHERE | GROUP | ORDER | BY | HAVING
275 | UNION | INTERSECT | EXCEPT 275 | UNION | INTERSECT | EXCEPT
276 | LIMIT | OFFSET | ALL 276 | LIMIT | OFFSET | ALL
277 | TRUE | FALSE | CAND | OR | NOT 277 | TRUE | FALSE | CAND | OR | NOT
278 | COUNT | AVG | SUM | MIN | MAX 278 | COUNT | AVG | SUM | MIN | MAX
279 | ASC | DESC 279 | ASC | DESC | RANDOM
280 | INSERT | INTO | VALUES | UPDATE | SET | DELETE | NULL | IS | COALESCE | LIKE 280 | INSERT | INTO | VALUES | UPDATE | SET | DELETE | NULL | IS | COALESCE | LIKE
281 | CURRENT_TIMESTAMP 281 | CURRENT_TIMESTAMP
282 | NE | LT | LE | GT | GE 282 | NE | LT | LE | GT | GE
283 | CCONSTRAINT | UNIQUE | CHECK | PRIMARY | FOREIGN | KEY | ON | NO | ACTION | RESTRICT | CASCADE | REFERENCES 283 | CCONSTRAINT | UNIQUE | CHECK | PRIMARY | FOREIGN | KEY | ON | NO | ACTION | RESTRICT | CASCADE | REFERENCES
284 | JOIN | INNER | CROSS | OUTER | LEFT | RIGHT | FULL 284 | JOIN | INNER | CROSS | OUTER | LEFT | RIGHT | FULL
403 | gopt of group_item list option 403 | gopt of group_item list option
404 | hopt of exp 404 | hopt of exp
405 | obopt of exp 405 | obopt of exp
406 | obitem of exp * exp 406 | obitem of exp * exp
407 | obexps of exp 407 | obexps of exp
408 | popt of unit
408 | diropt of exp 409 | diropt of exp
409 | lopt of exp 410 | lopt of exp
410 | ofopt of exp 411 | ofopt of exp
411 | sqlint of exp 412 | sqlint of exp
412 | sqlagg of string 413 | sqlagg of string
2032 #1 obitem), loc) 2033 #1 obitem), loc)
2033 val e = (EApp (e, #2 obitem), loc) 2034 val e = (EApp (e, #2 obitem), loc)
2034 in 2035 in
2035 (EApp (e, obexps), loc) 2036 (EApp (e, obexps), loc)
2036 end) 2037 end)
2038 | RANDOM popt (EVar (["Basis"], "sql_order_by_random", Infer), s (RANDOMleft, poptright))
2039
2040 popt : ()
2041 | LPAREN RPAREN ()
2037 2042
2038 diropt : (EVar (["Basis"], "sql_asc", Infer), dummy) 2043 diropt : (EVar (["Basis"], "sql_asc", Infer), dummy)
2039 | ASC (EVar (["Basis"], "sql_asc", Infer), s (ASCleft, ASCright)) 2044 | ASC (EVar (["Basis"], "sql_asc", Infer), s (ASCleft, ASCright))
2040 | DESC (EVar (["Basis"], "sql_desc", Infer), s (DESCleft, DESCright)) 2045 | DESC (EVar (["Basis"], "sql_desc", Infer), s (DESCleft, DESCright))
2041 | LBRACE eexp RBRACE (eexp) 2046 | LBRACE eexp RBRACE (eexp)