【问题标题】:SQL Matching a string that contains a stringSQL 匹配包含字符串的字符串
【发布时间】:2019-04-24 03:12:48
【问题描述】:

我在数据库中有两个表。

两个表都有一个企业名称列,但并不总是相同。

例如,tbl 1 的企业名称为“Aone Dental Practices Limited TA Jaws Dental”,而 Tbl 2 的企业名称为“Jaws Dental”。我希望能够将它们结合在一起,因为 Jaws Dental 在两者中都可见。

我似乎无法让 Like 子句为此工作。

试过了

 Tbl1_BusinesName Like '%' + Tbl2_BusinesName + '%'  

【问题讨论】:

  • 你的预期输出是什么?

标签: sql tsql wildcard sql-like ssms-2017


【解决方案1】:

使用EXISTS可以得到预期的结果:

SELECT *
FROM dbo.TableName1 AS Tbl1
WHERE EXISTS (SELECT 1
              FROM dbo.TableName2 AS Tbl2
              WHERE Tbl1.BusinesName LIKE '%' + Tbl2.BusinesName + '%');

【讨论】:

    【解决方案2】:

    这个查询应该可以工作:

    SELECT * 
    FROM Table1 T1
    LEFT JOIN Table2 T2 ON T1.BusinesName LIKE '%'+TS.BusinesName+'%'
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-12-25
      • 1970-01-01
      • 2010-11-22
      • 2019-06-05
      • 2021-06-02
      • 1970-01-01
      • 2019-05-12
      • 2017-05-26
      相关资源
      最近更新 更多