開いているSQLの4つのフィールドに重複があるかどうかを比較したいと思います。開いているSQLの4つのフィールドの重複を比較
シナリオ:ユーザーは入力する4つのフィールドを持っています。名(N1)、姓(N2)、追加の名(N3)および追加の姓(N4)。 アルゴリズムは次のように動作します.N1 + N2 +%を連結し、さらに N2 + N1 +%を連結します。したがって、ユーザがいずれかのフィールドに入力すると、クエリはN1N2%またはN2N1%を検索します。これは2つのフィールドを意味し、2つあります!可能な組み合わせ。今度は2つのフィールドが追加され、このアルゴリズムは4つになるので爆発します!チェックする組み合わせ。どのようにこれに取り組むための任意のアイデアですか?
注:ユーザーが指定した任意の入力フィールドにデータを入力できるため、この種の組み合わせチェックを行います。そこで、フィールドのすべての組み合わせをチェックします。残念ながら、これは変更できません。
EDIT: このような方法で以前に設計されたような注文はできません。したがって、組み合わせによる合併症。
Edit2: 私は個々の部分をチェックするのが好きです。しかし、私たちがやりたいことは、理想的にはすべての文字列を連結し、DB内の部分文字列をチェックすることです。オープンSQLでは、それは同じステートメントを使用して行われます。私たちのDBテーブルには、N1 + N2の組み合わせのためにすでに格納されている連結された文字列があります。これは現在4つのフィールドに拡張する必要があります。
あなたの質問は非常に不明です。何らかの形で入力されたユーザーの詳細に基づいてデータベース内のユーザーを検索しようとしていますか?あなたはフィールドの正しい順序さえ仮定できませんか? – lilalinux
なぜOpenSQLクエリを使用しなければならないのですか?その目的のために正規表現を使用できないのはなぜですか? – Jagger
%N1%AND%N2%AND%N3%AND%N4%AND(N1%OR N2%OR N3%OR N4%)を試し、合計サイズが正確にすべての部品の合計であることを確認してください – lilalinux