TABLE_A 包含一NVARCHAR(200) NOT NULL
列Name
。它的字段由公司名称组成,后跟下划线并以公司 ID 结尾,例如:
MYCOMPANY_102
TABLE_B 的 PK 是一个INT NOT NULL
名为的列CompanyID
,将包含例如102
我的查询,要内部连接这两个表,其中一个参数以另一个结尾,不会产生任何结果。如果有人想知道显而易见的事情:是的,有匹配的记录。
SELECT * FROM [SERVER1].[DB1].[dbo].[TABLE_A] a
INNER JOIN [SERVER2].[DB2].[dbo].[TABLE_B] b
ON a.Name LIKE '%[_]' + CONVERT(NVARCHAR, b.CompanyID)
任何更正和洞察为什么我的查询不能工作,是最受欢迎的。
编辑:公司名称可以在任何地方包含数字和/或下划线,我只想锁定可能最后一次出现的下划线,然后是任意自然整数。据我所知,可能是_1,可能是_205952。数字后缀中没有前导零