gpt4 book ai didi

c# - 将两个关键字列表列与另一列匹配以进行匹配

转载 作者:太空宇宙 更新时间:2023-11-03 20:39:52 24 4
gpt4 key购买 nike

我正在使用 .NET 4.0 & C# 和 SQL Server 2008。我有一个产品表,其中有一列名为 Keywords。我有另一个包含 2 列的兴趣表 AcceptReject。所有 3 列都包含以逗号分隔的关键字。我需要匹配:

  1. 如果接受和拒绝都为空,则匹配
  2. 如果 Accept 有关键字,那么 Accept 和 Keywords 之间应该至少有 1 个关键字匹配
  3. 如果 Reject 有关键字,那么 Reject 和 Keywords 之间应该没有匹配项
  4. 2 和 3 的组合

理想情况下,我想在 SQL 查询中执行此操作。我愿意按顺序使用托管或 T-SQL 存储过程。


好的,根据评论,我添加了这些表格:

Keywords_Products [id(FK 到产品),关键字]
Keywords_Accepted [id(FK 到用户),关键字]
Keywords_Rejected [id(FK 到用户),关键字]

因此,我需要一组基于上述 4 条规则的给定用户 ID 的产品。

最佳答案

根据我掌握的有限信息,我建议您按以下方式重组您的数据库:

Product
---------
ProductId - int
ProductName - varchar
Accepted - bit

ProductKeywords
---------------
KeywordId - int
ProductId - int
Keyword - varchar

虽然我对你的数据结构有点困惑。这个模型适合你吗?如果是这样,它将避免将来出现很多可维护性和性能方面的问题。

关于c# - 将两个关键字列表列与另一列匹配以进行匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3470856/

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