我想基于多个值(例如','和'And',运算符)分割值。但是我在拆分功能中使用了“ And”,它不起作用,有人可以帮助我实现这一点吗?
select distinct y.value from history x
cross apply STRING_SPLIT(x.query, ',') y
where lower(rtrim(ltrim(y.value))) not in (
select s.value from keys s cross apply STRING_SPLIT(y.value, 'And') z where lower((s.value)) like lower(rtrim(ltrim(z.value)))
);
第214层消息,州11,第23行 该过程需要类型为'nchar(1)/ nvarchar(1)'的参数'separator'。
示例输入数据:
student,teacher,tutor and principle and director
输出:
student
teacher
tutor
principle
director
答案 0 :(得分:1)
如果“ and”是输入中唯一出现的单词,则只需用逗号替换“ And”,然后进行字符串分割