There are different interfaces for each type of query. Each of these interfaces
have at least a Str sub defined, which is the sub used to convert the object
into the actual query. These queries can in turn be used with a database
interfacing module, such as DBIish.
subinto(Str:D$table-->self)
subrecord(Any:D%record-->self)
subrecords(Hash:D@records-->self)subfrom(Str:D$table-->self)
subselect(Str:D$column-->self)
subselect(Str:D*@columns-->self)
subselect-as(Pair:D$column-->self)
subselect-as(Pair:D*@columns-->self)
subwhere(Str:D$column, Any:D$value-->self)
subwhere(Str:D$column, Str:D$check, Any:D$value-->self)
suborder-by(Str:D$column, Str:D$direction="ASC"-->self)
subskip(Int:D$amount-->self)
subtake(Int:D$amount-->self)subtable(Str:D$table-->self)
subset(Str:D$column, Any:D$value-->self)
subset(Pair:D*@records-->self)
subset(Any:D%record-->self)
subwhere(Str:D$column, Any:D$value-->self)
subwhere(Str:D$column, Str:D$check, Any:D$value-->self)subfrom(Str:D$table-->self)
subwhere(Str:D$column, Any:D$value-->self)
subwhere(Str:D$column, Str:D$check, Any:D$value-->self)subname(Str:D$table-->self)
subprimary-key(Str:D$column-->self)
# Column typessubstr(Str:D$name, Int:D:$length=50, Bool:D:$nullable=False, Str:$default-->self)
subint(Str:D$name, Bool:D:$nullable=False, Int:$default-->self)
subuint(Str:D$name, Bool:D:$nullable=False, Int:$default-->self)
subfloat(Str:D$name, Bool:D:$nullable=False, Num:$default-->self)
subdate(Str:D$name, Bool:D:$nullable=False, Date:$default-->self)