結合するテーブルが 2 つありますが、2 つの列に漢字が含まれているため、t1.term = t2.term は機能しません。
select *
from table t1
left join table t2 on t1.term = t2.term
N'%'+ t1.term '%' のように検索する必要があったとき、「N」は機能しましたが、結合 t1.term = t2.term で実装する方法が見つかりませんでした。
1
データと結果の例を提供してください。漢字が含まれているだけでは、等価比較が機能しないというわけではありません。値にいくつかの違いがあるはずです (あるいは、強制的に照合する必要があるかもしれませんが、私はそうではありません)後者についてはよく知っています)。
– underscore_d
2020 年 9 月 3 日 10:39
------------------------
on 句に like 式を入れることができます。
select *
from table t1 left join
table t2
on t2.term like N'%' + t1.term + N'%';
これによりパフォーマンスが低下することに注意してください。
------------------------
私の知る限り、テーブル (/databases/schemas) が同じ照合順序を使用している場合、照合順序はコンテンツに適しており、テキストは正確です同様に、これは機能するはずです。
テーブル、データベース、スキーマの照合定義をチェックし、その定義が同じであり、テキスト コンテンツに適していることを確認してください。照合が鈍感であればあるほど、相違点がより寛大になります。テキスト対テキスト、テキスト対テキストなど