2016-12-01 6 views
1

私はこれらのテーブルを選択する必要が最低5文字試合

Column1    Column2 
mr white james bond james cameron 
gordon ramsay   Harry Gordon Selfridge 

2つのSQLサーバーのテーブルの列を考えてみましょう名前に5つの文字の一致を比較することで同じです。例

  • 名前mr white james bondjames cameronは、共通の5 文字の単語jamesが含まれています。
  • 名前gordon ramsayおよびHarry Gordon Selfridgeには、 の5つの という文字の単語gordoが含まれています。

可能でしょうか。 私はこの

SELECT * FROM table1 A 
INNER JOIN table2 B ON UPPER(SUBSTRING(A.name,1,5))=UPPER(SUBSTRING(B.name,1,5)) 

を使用して最初 5文字を一致させることができます。しかし、すべての5つの文字の可能性を一致させることはできません。

+0

記事を読み出す:あなたのためのhttp://stackoverflow.com/questions/28636051/how-to-join-two-tables-based-on-substring-values-of-fields –

+0

@HappyCoding感謝を回答。しかし、私はあなたの参照記事リンクとして、部分文字列STARTとENDの事前定義された値を持っていません。 – Mani7TAM

+0

あなたはAの中の部分文字列部分を解くために '% '+部分文字列(B.name、1.5)+'% ''を使うことができます。 –

答えて

1

両方の文字列を連結してみてください。

SELECT A.name, B.name FROM table1 A 
INNER JOIN table2 B ON '%' + UPPER(SUBSTRING(A.name,1,5)) + '%' LIKE '%' + UPPER(SUBSTRING(B.name,1,5)) + '%' 
ORDER BY A.id 
関連する問題