【发布时间】:2021-09-29 06:19:23
【问题描述】:
我有一个场景,其中一个表包含一个哈希值和一个文件路径,其中存在具有相同内容但不同行中的元数据不同的文件。我想生成一个列表,其中包含一个文件 + 每个哈希的路径,仅使用 sqlite SQL。
例子:
hash filename path
abc123 foo.txt /tmp/
abc123 bar.txt /tmp/
xyz890 image.png /home/user4
xyz890 image2.png /home/user2
理想的输出是:
abc123 /tmp/foo.txt
xyz890 /tmp/image2.png
最好的方法是什么?
【问题讨论】:
-
理想输出有什么意义?你当然可以组合哈希,但是 bar.txt、image.png、/home/user2 和 /home/user4 去哪儿了?
-
也许更好的表达方式是我只需要知道每个哈希的第一个结果。
-
select hash, filename, path from table group by hash可以工作吗?但是文件名/路径值可以是与哈希匹配的任何值(根据此处的答案:stackoverflow.com/questions/17277152/…)如果不是简单的东西,例如:SELECT hash, min(filename), path from table应该可以工作。 -
理想的输出没有意义。