SELECT
特定の文字やワイルドカードの代わりに列全体を使用して、2 つのテーブルで部分一致を実行しようとしています。
2 つのテーブル (T1、T2) と 2 つの列 (T1.C1、T2.C2) があります。C1 と C2 が正確にフォーマットされた一致である場合にリターンを得ることができますがSELECT
、C2 は C1 からのテキスト文字列を含むテキストをつなぎ合わせています。
そのため、例として、2 つのテーブルの書式設定された文字の例をいくつか示します。
T1.C1
- ドウ、ジョン
- スミス、スティーブ
- ロバーツ、サリー
T2.C2
- #Doe、John、Thekid、Billy、ランダム グループ A
- ランダム グループ B, Smith, Steve# Jones, Allie
- #Roberts, Sally!Random GroupC など
私ができるようにしたいのは、T1.C1 の「Doe、John」が T2.C2 で見つかった場合に一致することですが、そのテーブルでは「#Doe、John、Thekid、Billy、Random Group A」としてフォーマットされています。
これが私が正確な一致を得るために使用しているものです...
SELECT *
FROM T1, T2
WHERE T1.C1 LIKE CONCAT('%', T2.C2 , '%');