dolthub / dolthub/dolt

Implement `VERSIONS BETWEEN '<commit>' and '<commit>'` and other ref forms

Open
#6,353 4 comments 1 reaction 0 assignees View on GitHub
enhancement sql version control
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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.