【发布时间】:2019-11-28 06:36:28
【问题描述】:
我有一个简单的表格,即
- ID 整数,
- 值 varchar(100)
value 列由分隔字符串组成,例如
- ID - 值
- 1 - a,b,c,d
- 2 - b,e
- 3-c
- 4 - r
在根据分隔符拆分每个值后,我需要从中检索所有值,即“。”
我有一个用户定义的函数来分割字符串。 什么是正确/有效的方法?我希望避免遍历每一行,然后拆分字符串。
【问题讨论】:
-
你的预期输出是什么?
-
@RedDevil a b c d e r - 拆分值后分隔字符串中的每个不同 val
-
到目前为止您尝试过什么?请通过minimal-reproducible-example 发帖尝试。
-
解决这个问题的正确和有效的方法是规范你错误的数据库结构 - 并停止将分隔字符串存储为列值。欲了解更多信息,请阅读Is storing a delimited list in a database column really that bad?,您会在其中看到很多理由说明为什么这个问题的答案是绝对是的!
-
你使用的是哪个 sql 版本?
标签: sql sql-server sql-server-2012