(* Abstract syntax for uSQL, very simple SQL SELECT statements sestoft@dina.kvl.dk 2001-02-22 *) datatype constant = CstI of int (* Integer constant *) | CstB of bool (* Boolean constant *) | CstS of string (* String constant *) datatype stmt = Select of expr list (* fields are expressions *) * string list (* FROM ... *) and column = Column of string (* A column name: c *) | TableColumn of string * string (* A qualified column: t.c *) and expr = Star | Cst of constant (* Constant *) | ColumnExpr of column (* Column *) | Prim of string * expr list (* Builtin function *)