SQL - 根据表中的列获取列表

时间:2013-04-11 13:59:49

标签: sql sql-server

我有一张名为“公司”的表。

在“Product”列中,用“|”分隔(管道符号),如“12 | 13 | 14 | 15”。

我想从此表中获取产品为“12”的列表。

即公司产品“12”,即使公司也可能有另一种产品。

我希望通过拆分列来获取列表。

请帮帮我。

2 个答案:

答案 0 :(得分:4)

试试这个,

SELECT   *
FROM     Company
WHERE    '|' + Product + '|' LIKE '%|' + '12' + '|%'

答案 1 :(得分:1)

您可以使用类似

的内容
SELECT *
FROM   Company
WHERE  Product LIKE '12'
OR     Product LIKE '12|%'
OR     Product LIKE '%|12|%'
OR     Product LIKE '%|12'

但您应该考虑更改架构,以便有一个名为CompanyProduct的表,每个公司都有许多行。