gpt4 book ai didi

mysql - MySQL-从版本控制数据库获取最新版本的文件内容

转载 作者:行者123 更新时间:2023-11-30 00:40:22 24 4
gpt4 key购买 nike

抱歉,标题有点怪异,很难用一句话来解释。

我有2张桌子:



fileChange


仅当从最新版本删除,创建或编辑文件后,才创建fileChange。
每个fileChange都链接到一个版本,例如版本23。
每个fileChange都有一个changeType:创建,编辑或删除。
每个fileChange都有一个文件字段,其中包含从根到文件的相对路径。
如果创建或编辑了FileChange,则内容列将填充来自已创建/编辑的文件的内容。

这些全部用于我正在构建的版本控制/部署系统。

创建新的服务器安装时,我想将最新版本上传到服务器。我当然可以遍历从版本1到最新版本的所有文件更改,并以这种方式获取最新版本,但是我很好奇是否有办法在1或2个MySQL查询中执行此操作。

因此,我的目标是获取所有影响该软件最新版本的fileChange行。另一种解释:

如何获得所有“已创建”或“已编辑”的文件更改,并且以后没有使用相同文件路径的文件更改?

最佳答案

请尝试以下查询。它连接版本表和文件更改表(假设两者都有一个名为id的列,然后将结果降序排列并将结果限制为一(最新)行

SELECT *
FROM fileChange
JOIN version ON version.id=fileChange.id
WHERE version.date_of_version_creation < fileChange.date_of_file_creation
ORDER BY version.id DESC
LIMIT 0 , 1

关于mysql - MySQL-从版本控制数据库获取最新版本的文件内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21818096/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com