gpt4 book ai didi

sql - 如何在 SQL 中实现 bool 标记搜索?

转载 作者:太空狗 更新时间:2023-10-30 02:01:12 25 4
gpt4 key购买 nike

给定一个项目表、一个标签表和它们之间的一个连接表,什么是实现表单查询的好而有效的方法:

p1 AND p2 AND ... AND pn AND NOT n1 AND NOT n2 ... AND NOT nk

我正在使用 SQL。因此,要找到与所有标签 p1...pn 匹配但不匹配 n1...nk 的所有项目?

是否有好的“标准”解决方案?

最佳答案

如果不知道你的模式很难说,但像这样的东西会起作用:

select article_id from articles
inner join tag t1 on t1.article_id=articles.article_id and t1.tag='included_tag'
inner join tag t2 on t2.article_id=articles.article_id and t2.tag='another_included_tag'
left outer join tag t3 on t3.article_id=articles.article_id and t3.tag='dont_include_tag'
left outer join tag t4 on t4.article_id=articles.article_id and t4.tag='also_dont_include_tag'
where t3.tag_id is null and t4.tag_id is null

对要包含的标签进行内连接,对不包含的标签进行反连接(外连接+必填列为空)

关于sql - 如何在 SQL 中实现 bool 标记搜索?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/602849/

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