MLDB implements a query language based upon SQL's
This is used both for efficient evaluation of expressions, and to
>specifies the columns to put in the output dataset
>specifies the name of the rows in the output dataset
>specifies the dataset(s) to select from
>specifies which values to put in the output dataset based on their timestamp
>specifies which rows in the input contribute to the output dataset
GROUP BY <
>specifies how to group the output for aggregate functions
>specifies the groups to select
ORDER BY <
>specifies the order to output the results
LIMIT <int>specifies the number of output rows
OFFSET <int>specifies how many output rows to skip
--denotes the start of a line comment and
/* ... */denotes a block comment which can span multiple lines
") denote identifiers and single-quote characters (i.e.
') denote strings
_), and don't clash with a reserved word such as
timestamp. In all other cases they must be surrounded by double-quote characters (i.e.
"). Double-quote characters within quotes must be doubled (i.e.
François says "hello", eh?in a query, you would need to surround it in double-quotes (because of the spaces, punctuation and non-ASCII character) and double the inner double-quotes:
"François says ""hello"", eh?".
.) is an indirection operator, much like the minus, or dash, character (i.e.
-) is a mathematical operator, so while either may appear in an quoted identifier, confusion and excess quoting can be avoided by avoiding this practice. The only punctuation mark which is not and will never be an operator is the underscore character (i.e.