0

求人情報サイトを作りたいのですが、条件(タイトル、カテゴリ、タグ、市区町村...)が多いので、MySQLの正規表現を使っています。ただし、非常に遅く、500 内部サーバー エラーが発生する場合があります。

一例を次に示します。

select * from job 
where 
( LOWER(title) REGEXP 'dév|freelance|free lance| 3eme   grade|inform|design|site|java|vb.net|poo ' 
or 
LOWER(description) REGEXP 'dév|freelance|free lance| 3eme grade|inform|design|site|java|vb.net|poo '
 or
 LOWER(tags) REGEXP 'dév|freelance|free lance| 3eme grade|inform|design|site|java|vb.net|poo') 
and 
LOWER(ville) REGEXP LOWER('Agadir') 
and 
`date`<'2016-01-11' 
order by `date` desc 

何かアドバイス?

4

2 に答える 2

1

正規表現だけに基づいてクエリを最適化することはできません。テキスト検索には全文索引 (または Mnogo などの専用検索エンジン) を使用し、場所の地理空間索引を使用します。

于 2016-01-11T20:45:07.447 に答える