比较字符串中随机放置的信息?

时间:2016-04-02 19:24:19

标签: sql sql-server tsql sap sapb1

我有两个表如下所示:

PKey    Description    Group
1AF2    Item 1         101
2B2E4    Item 2         102
3G54A1    Item 3         101
4TR7    Item 4         103

就像这样:

PKey                      Rate 1    Rate 2
1AF1/1AF2/1AF3            .075      .0089
2B2E1/2B3E3/2B1E4/2B7E5   .068      .049
3G54A1/3H52A4/3G14B2      .025      .0099
4TR3/4TR7/4TR8            .045      .0012

我需要为每个项目PKey返回Rate 1和Rate 2,但是制作表2的人对SQL数据库如何实际使表格有用(试图节省时间或其他东西)知之甚少。

有没有简单的方法来返回信息?它总是被行中其他PKey的斜线除,但它可以在开头,任意地在中间的某个点或行的末尾落下。此外,某些项目可能根本不会出现在一行中。

1 个答案:

答案 0 :(得分:4)

因此,table2中的PKey包含单个PKeys的连接列表。您需要一个字符串操作来匹配记录,即'/1AF1/1AF2/1AF3/' like '%/1AF2/%'

select *
from t1
join t2 on '/' + t2.pkey + '/' like '%/' + t1.pkey + '/%';