1
私のようなコラムregexp
と列value
とMySQLのテーブルを持っています。またMySQLの正規表現リスト
regexp value
ab+c abc
bc+d bcd
私のような値のリストを持っています(ないデータベースでは、そのクエリ内の)
abc
abbc
bcccccd
リストの値を正規表現にマッチさせ、各アイテムの値を得る必要があります - 期待される出力:
これは正規表現でなかった場合は3210私は
select `regexp`, `value`
from `mytable`
where `regexp` in ('abc', 'abbc', 'bcccccd')
を使用することができますしかし、私は正規表現に一致するように、これを使用することはできません。 regexp in
のいくつかの並べ替えがあっても、それは正規表現と一致しない値を返しますので、これはまだ問題になる可能性があります - 不要な出力:
select rt.value from regextable as rt where 'bcccccd' rlike rt.regexp
:
regexp value
ab+c abc
ab+c abc
bc+d bcd
しかし、それは本当に遅いです、私はそのような約100kのクエリが必要です。 – Dani