Queries cannot be modified once created
shadowhand opened this issue · 0 comments
shadowhand commented
Consolidating discussion from #71, #66, #58, #31 to document the plan for implementing modifications to queries. This applies mainly to SELECT
but also other queries.
WIP: This issue will be modified until a clear plan is made.
Currently some methods in Latitude are additive and some are setters. For instance, columns()
always changes the column list and join()
always adds a new join. A full list:
method name | add | set |
---|---|---|
columns() | x | |
addColumns() | x | |
from() | x | |
addFrom() | x | |
join() | x | |
where() | x | |
andWhere() | x | |
orWhere() | x | |
groupBy() | x | |
orderBy() | x | |
limit() | x | |
offset() | x | |
having() | x |
Not all methods need to be additive and not all methods need to be setters. It should be possible to reset values that are additive.