The random query generator builds and inspects composition of a query by building a tree of Python objects. The sql writer uses this model to then write the query.
INSERT gets its own Jira because it's the first.
The rough task list/design is something like:
- Create an abstract Query() class so that all queries areinstancesof() Query.
- Make current Query() a SelectQuery()
- InsertClause class with required kudu table attribute
- ValuesClause has a required column list and a values list
- InsertQuery will have a required InsertClause and a required SelectQuery xor ValuesClause
It may be enough for this task to stub them out and fill in functionality when actually generating or writing queries.