【发布时间】:2013-06-22 13:44:43
【问题描述】:
我在 SQL 表中有以下形式的列 (varchar400):
Info
UserID=1123456,ItemID=6685642
该列是通过我们的销售点应用程序创建的,因此我不能将其简单地分成两列,因为这会导致大量工作。我的问题是这个列用于存储我们数据库中产品的属性,所以虽然我只关心UserID和ItemID,但这里可能存储了多余的信息,例如:
Info
IrrelevantID=666,UserID=123124,AnotherIrrelevantID=1232342,ItemID=1213124.
我想要检索的只是两列,如果Info 列中不存在这些属性,则不会给出错误。 :
UserID ItemID
123124 1213124
如果 ID 的长度都是可变的,但所有属性都以逗号分隔并遵循统一的样式(即“UserID=number”),是否可以通过错误检查有效地做到这一点。
谁能告诉我解决问题的最佳方法?
非常感谢。
【问题讨论】:
-
行上是否定义了任何 id?
标签: sql sql-server regex sql-server-2005 select