Mercurial > urweb
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) |