0

2 つの DNA のような文字列を MySQL と比較する方法を見つけようとしていますが、ストアド関数は問題ありません。文字列も変更される可能性がありますが、次の形式にする必要があります: [code][id]-[value]like C1-4. (-も変更される可能性があります)

文字列の例:

C1-4,C2-5,C3-9,S5-2,S8-3,L2-4

値が他の文字列に存在しない場合、たとえばS3-1、スコアは 10 (最大値) になります。質問された文字列がC1-4であり、指定された文字列がである場合C1-5、スコアは である必要が4 - 5 = -1あり、質問された文字列がC1-4であり、指定された文字列が である場合C1-2、スコアは である必要があります4 - 2 = 2

これの理由は、リアルタイム アルゴリズムが 10.000 の結果で遅くなっているためです。(保存された関数、インデックス、クエリの最適化で既に最適化されています) 10.000 x 小さくて高速なクエリは多くのことを行うためです。そして、クエリを注文して適切な制限を取得する前に、スコアを計算する必要があります。

ご不明な点がございましたら、コメントでお知らせください。

** 編集 **

文字列ではなく、DNAビットを1-n関係テーブルとして格納したテーブルを使用することも可能だと考えています。

ID | CODE | ID | VALUE
----------------------
1. | C... | 2. | 4....

4

0 に答える 0