私は、次の値部分的なFROM ... TO値を持つレコードの検索方法?
! # ! FROM ! TO !
!===!======!=======
! 1 ! aaaa ! aabb !
! 2 ! aa10 ! aa2a !
! 3 ! bb ! cc !
! 4 ! bb 20! bb 30!
! 5 ! bccc ! bccd !
FROM
と任意の範囲に及ぶことができますのあるDBを持っています。サポートされているすべての文字は許可されます。 FROMとTOは異なる長さを持つことができます。 DBの行数は約800,000です。行には、ユースケースにとって重要な列があります。
オートコンプリートフィールド私はFROMとTOの間のどこかに一致するすべてのレコードを見つける必要があります。
SELECT *
FROM table WHERE (
'11' BETWEEN from AND to
)
は、残念ながら、これは1105年= FROMために一致して= 1110にしません:
私はこのような何かを試してみました。この外観の正しいクエリはどうでしょうか?
bb'と 'cc'は 'B'は、あなたの出力には、その行と一致する理由を確認してくださいB''後の両方である、そうではない '、標準アルファベット順のソートを仮定。入力をFROM値とTO値にどの程度マッピングする予定ですか? –
あなたの例は非常に曖昧で、注文は信頼できるパターンに従っていないようですが、目的を明確にすることはできますか? –
ユーザーが 'b'を入力すると、 'b'で始まるすべての行と 'b'で始まるFROMとTOの間の可能な値を持つすべての行が一致する必要があります。 – BetaRide