【发布时间】:2019-01-10 17:57:47
【问题描述】:
我有一个用文本标签标记文件的系统。每个文件都有几个标签。相关的表格/列是:
taggings(fileHash,tagId)
tags(tagId,tagText)
如何找到同时具有 tagText 与查询 1 匹配的行和与查询 2 匹配的另一行的所有 tagId?换句话说,当标签位于不同的行中时,如何找到同时具有两个标签的每个fileHash?
有没有办法为任意数量的匹配做到这一点?
我发现this 似乎相关,但是当我尝试编写这样的查询时,我收到“无法准备语句”错误。
样本数据
标签
fileHash tagId
404ba9 1
404ba9 2
e04f90 1
e04f90 3
标签
tagId tagText
1 document
2 personal
3 work
预期结果
如果用户同时搜索tags 中定义的personal 和document,则返回404ba9,因为taggings 中同时存在(404ba9, 1) 和(404ba9,2)。
【问题讨论】:
-
请提供样本数据和预期结果。几行将有很长的路要走。
-
我的问题已得到解答,但我为将来遇到此帖子的任何人添加了示例数据和预期结果。