2016-04-05 13 views
0

mongodbクエリの検索で1つの問題があります。私は大文字と小文字を区別せずにコレクションを取得したい。これのために私は以下のようないくつかのクエリーを見つけました。そのうまく動作します。jessenger mongodb大文字小文字を区別しないクエリの検索

db.applications.find({"blocks.HOSPITAL_INFO.data.name": new RegExp('^VIKRAM$', 'i')}); 

in laravel私はjessengersを使用しています。 。私はlaravelで生のクエリとして書くことができます上記のクエリ。

しかし私の問題はこれまで私が$ {in} {'a'、 'b'}を使っているときです。 FYI 'a'、 'b'は動的配列値です。だから、どのようにこれらの配列値の正規表現を書くことができますか?代わり

db.applications.find({"blocks.HOSPITAL_INFO.data.name": 
    {$in:[new RegExp('^a$', 'i'),new RegExp('^b$', 'i')]}}); 

OR、::

db.applications.find({"blocks.HOSPITAL_INFO.data.name": 
    {$in:[/^a$/i,/^b$/i]}}); 

... & bは動的な変数です

答えて

0

MongoDBの中のクエリは、このようなものになるだろう。

私はLaravelに非常に慣れていないんだけど、私はそれがこのようなものになります推測している:

$applications = Application::whereIn('blocks.HOSPITAL_INFO.data.name', 
    [new MongoRegex('^a$/i'), new MongoRegex('^b$/i')])->get(); 
関連する問題