gpt4 book ai didi

sql - SQL 2005 中的 TSQL : Query

转载 作者:行者123 更新时间:2023-12-04 23:21:23 26 4
gpt4 key购买 nike

我的表中有 2 列,名为 TaskSetSkillsSelected .

样本数据如下:

TaskSet                        | SkillsSelected
--------------------------------------------------
SK000001, SK000004, SK000002 | SK000001, SK000002, SK000003
SK000002 | SK000002, SK000003, SK000004

如您所见,它使用逗号分隔数据。我想要一个查询,它会给我不存在于 SkillsSelected 中的 TaskSet 的记录,因此在这种情况下将返回:
SK000003 
SK000003, SK000004

最佳答案

在 SQL Server 中处理逗号分隔列表的最佳方法是创建一个返回表类型的 UDF。见 this link for details . MS 文档声称 CLR UDF 更快,但 here's an actual comparison of the two options in use .

一旦到位,您可以使用:

SELECT t.*
FROM TABLE t
WHERE EXISTS(SELECT value
FROM dbo.split(t.taskset)
INTERSECT
SELECT value
FROM dbo.split(t.skillsselected))

引用:
  • EXCEPT and INTERSECT
  • 关于sql - SQL 2005 中的 TSQL : Query,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1996699/

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