我有两张 table
raw_commits(sha,date,author)
和
milestones(name,start,end)
哪里milestones
表包含所有项目里程碑的时间戳范围。
我不确定如何处理 JOIN
实现以下目标:
对于每个 raw_commits
, 显示 raw_commits.sha, raw_commits.date, raw_commits.author, milestones.name
如果它有一个里程碑,则显示 NULL
如果它不“属于”一个里程碑,并且为每个里程碑显示重复的行,如果提交“属于”多个 milestones
.
分类成milestones
显然是通过使用 raw_commits.date
完成的作为引用,即 raw_commits.date >= milestones.start AND raw_commits.date <= milestones.end
.
如何实现所描述的行为?
最佳答案
SELECT
raw_commits.sha,
raw_commits.author
raw_commits.date,
milestones.name
FROM
raw_commits
LEFT OUTER JOIN
milestones
ON
raw_commits.date BETWEEN milestones.start AND milestones.end
关于mysql - 加入时间戳范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12435279/