SQL Server - 内部加入 - 像部分匹配

时间:2015-02-04 16:52:53

标签: sql inner-join string-matching

我有两张桌子

    Table 1 Customers
    Table 2 Statement

我想使用类似于on语句的内部联接查询,该语句将部分匹配Name列。

例如

     Statement.Name
     MCGILL UNIVERS.  
     CANADIAN BLOOD BPY 
     OTTAWA HOSPITAL  
     VANCOUVER COAST

     Customers.Name
     McGILL UNIVERSITY
     OTTAWA HOSPITAL CLINICAL INVESTIGATION UNIT
     CANADIAN BLOOD SERVICES
     Vancouver Coastal Health Authority

我尝试使用LEFT字符串运行内连接:

     SELECT     ['Govt Customers$'].*, Statement.* 
     FROM       ['Govt Customers$'] Inner Join
                  Statement
                  on Statement."Adjusted Comment" 
                  like Left (['Govt Customers$'].[Customer Name],11) 

它没有返回结果,所以我不确定我的错误在哪里。 我无法进行全文查找,因为我的表没有编入索引。 如果有人可以提供帮助,请告诉我。我是SQL的新手,所以任何和所有的帮助都会非常感激!

1 个答案:

答案 0 :(得分:2)

如果要匹配前11个字符,则需要选择该连接两侧的左侧。您也可能遇到某些字符被LIKE运算符视为通配符或模式字符的问题。