代码之家  ›  专栏  ›  技术社区  ›  Marcus L

你能同时选择某物的位置吗?

  •  0
  • Marcus L  · 技术社区  · 16 年前

    我需要写一个我想称之为山谷女孩的问题。我需要 SELECT 是什么东西 LIKE IN -像这样:

    从表1中选择*名称类似 in(从表2中选择名称)

    这是因为我有一张满是公司名称的表格,但它们并不完全相同——例如,在表1中,它可能会说“克莱斯勒集团”,而在表2中,它可能只会说“克莱斯勒”。

    有什么简单的方法吗?

    4 回复  |  直到 16 年前
        1
  •  2
  •   silent    16 年前
    select
      *
    from
      Table1 t1
        inner join Table2 t2 on (t1.name like t2.name + '%')
    

    或者不带“%”符号,如果需要:)

        2
  •  1
  •   AdaTheDev    16 年前

    你可以这样做:

    SELECT t1.*
    FROM Table1 t1
        JOIN Table2 t2 ON t1.Name LIKE t2.Name + '%'
    
        3
  •  0
  •   Murph    16 年前

    我想:

    SELECT * FROM table1 WHERE EXISTS (SELECT Name FROM Table2 WHERE Table1.Name LIKE Name)
    
        4
  •  0
  •   Andrew    16 年前

    如果您试图创建一个密切匹配的列表,则 SOUNDEX 当拼写有问题时,函数会很有用。

    SELECT T1.* 
      FROM Table1 T1    
      JOIN Table2 T2 ON SOUNDEX(T1.Name) = SOUNDEX(T2.Name)