Implement `VERSIONS BETWEEN '<commit>' and '<commit>'` and other ref forms
- Dominant language
- Go
- Stars
- 24.4k
- Forks
- 873
- Avg merge
- 1d 9h
- Merged PRs (30d)
- 121
Description
SQL:2011 implements `VERSIONS BETWEEN SYSTEM TIME ... AND ...` as well as `AS OF SYSTEM TIME`. Dolt supports `AS OF` queries taking a number of different arguments:
https://docs.dolthub.com/sql-reference/version-control/querying-history#querying-past-snapshots-with-as-of
My proposal is to implement `VERSIONS BETWEEN and ` to support ref types supported by as of like commit, timestamp, `HEAD`, etc.
For example:
`select * from versions between '' and ''`
returns:
all rows that existed in that table between the commits joined together in a single table.
Contributor guide
No contributing guide indexed for this repository
Research direction
No implementation files or tests are named. Start by reading the linked AS OF documentation and the SQL:2011 VERSIONS BETWEEN syntax, then trace how existing AS OF references such as commits, timestamps, and HEAD are handled. Done means a VERSIONS BETWEEN query accepts those reference forms and returns rows that existed between the two commits in one table.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go, sql
- Domain
- databases
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100