SQL Server:两个SQL列的部分匹配

时间:2015-12-23 12:44:59

标签: sql sql-server sql-server-2008 sql-server-2012

有没有办法可以为两个SQL列运行部分匹配:我有两个SQL列,如下所示。 Column01是整数,列02是字符串。

Column01     Column02
125          Length of room is 125 meter only  

我有兴趣运行部分匹配,看看列是否可以在第二列中找到值。我尝试了以下编码,但它肯定无法正常工作

其中Column02类似'%'+ Column01 +'%'

此语法确实运行部分匹配,但它将结果拉为%Column01%(作为连接函数)。

这个问题有解决方案吗?

感谢您的期待

2 个答案:

答案 0 :(得分:0)

DECLARE @t TABLE
(
    Column01 VARCHAR(20),
    Column02 VARCHAR(100)
)

INSERT INTO @t (Column01, Column02)
VALUES ('125', 'Length of room is 125 meter only')

SELECT *
FROM @t
WHERE CHARINDEX(Column01, Column02) > 0     

答案 1 :(得分:0)

如果您的关注点是分隔符(因此您不希望125与1250匹配),那么您可以执行以下操作:

Where ' ' + Column02 + ' ' like '% ' + Column01 + ' %'