ホームページ > データベース > mysql チュートリアル > mgo がデータ (コード) を検索するために文字列の長さを指定する方法の紹介

mgo がデータ (コード) を検索するために文字列の長さを指定する方法の紹介

不言
リリース: 2019-03-23 17:52:58
転載
2691 人が閲覧しました

この記事の内容は、mgo で文字列長を指定してデータ (コード) を検索する方法に関するもので、一定の参考値がありますので、困っている方は参考にしていただければ幸いです。あなたは助けてくれました。

職場では、文字列フィールドの長さに基づいて一部のデータをフィルタリングすることがあります。このとき、正規表現を使用することも、mongodb の $where を使用することもできます。正規表現はさまざまな言語で正しく記述されています。若干の違いがあるのでここに記録しておきます。

コメント フィールドの文字列長が 10 を超えるデータを探している場合、mongodb コマンド ラインは次のように記述されます。

$ の部分は、

find({"comment":{"$exists":true},"$where":"this.comment.length>10"})
ログイン後にコピー
のように記述されます。

正規表現は次のように記述されます:

find({"comment":{"$regex":/^.{10,}$/}})
ログイン後にコピー

Go 言語での記述方法は次のとおりです:

$ここでの記述方法:

collection.Find(bson.M{"comment": bson.M{"$exists": true}, "$where": "this.comment.length > 10"})
ログイン後にコピー

正規表現の記述方法:

collection.Find(bson.M{"comment": bson.M{"$exists": true, "$regex": bson.RegEx{`^.{10,}$`, ""}}})
ログイン後にコピー

その他の条件 Regular:

^.{n,m}$ n <= length<= m
^.{ n}$ length= n

この長さ 文字の長さです 例えば「正規表現」の長さは 5

検索性能についてはインターネット上で言われていますその正規表現は、$where よりもパフォーマンスが優れています。データの量が大きくない場合、簡単なテストでは、正規表現の方が検索パフォーマンスが優れていることがわかります。1 点、後でさらに調査する時間があります。

Thisこの記事はここで終了しました。その他のエキサイティングなコンテンツについては、PHP 中国語 Web サイトの mongodb ビデオ チュートリアル 列に注目してください。

以上がmgo がデータ (コード) を検索するために文字列の長さを指定する方法の紹介の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:segmentfault.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート