36日目-2[データベースNoSQL演算子タイプ]
3625 ワード
比較演算子
db.trips.find({"a" : {"$lte" : 70}, "b" : {"$ne" : "customer"}})
db.trips.find({"a" : {"$lte" : 70}, "b" : {"$eq" : "not customer"}})
tripsという集合では、aは70以下、bは非顧客の値に等しい.論理演算子
db.collection_name.find($nor: [{result:"a"}, {result:"b"}])
resultはa,bの値ではありません.
and演算子は基本的に内在しています.db.collection_name.find({sector: "a"}, {name:"hojin"})
このコマンドはdb.collection_name.find($and : [{sector: "a"}, {name:"hojin"}])
これと同じです.
ひょうじえんざんし
これは$expr
についての内容です.
db.collection_name.find($nor: [{result:"a"}, {result:"b"}])
db.collection_name.find({sector: "a"}, {name:"hojin"})
db.collection_name.find($and : [{sector: "a"}, {name:"hojin"}])
これは
$expr
についての内容です.{"$expr" : {"$eq" : {"$a","$b"}}}
$exprを使用して、同じエンティティ内で値を比較できます.この値がどのフィールドと同じであるべきかを指定する必要はありません.このとき、フィールドに$値が含まれている場合は、そのフィールドの値を表します.
同じ場所で自転車を借りたり、1200秒以上借りたりするユーザーが必要だと仮定します.
{$expr:{"$and" :[
{"$gt" :["$time", 1200]},
{"$eq" :["$end", "$start"]}
]}}
{$expr:[
{"$gt" :["$time", 1200]},
{"$eq" :["$end", "$start"]}
]}
私から見れば、かなり複雑ですが...熟能生巧配列演算子
これは、データの並べ替えに使用できる演算子の整理です.
前の記事ではpushを使用して配列に値を追加する方法について説明した.
では、配列の値をどのように取得しますか?
フィールドインポートを簡単に指定すればよい
{"a":"shampoo"}
Aという配列の中にシャンプーがあれば、お値段が付きます.{"a":["shampoo"]}
このようにしてアレイを作成すると、aというフィールドに
shampoo
万のドキュメントが1つしかありません.{"a": ["shampoo", "lotion"]}
こんなコマンドを入力してみたいでは、aという名前のフィールドに「シャンプー、シャンプー」という順番が逆の場合
この値はロードされません.
順序を考慮せずにフィールドをロードする必要がある場合は、次の操作を行います.
{"a" : {$all : ["shampoo", "lotion"]}
これでall
を使えばいいです.{"a" : {"$size" : 20, $all : ["shampoo", "lotion"]}
こんなに大きいのもあげられます.配列は使用形態が少し異なることに注意してください.
Projection
簡単に言えば、データから欲しいデータだけを取得することです.
SQL文でMySQLから必要な値を取得するのと同じです.
ドキュメントには多くのフィールドがあり、これらのフィールドをすべてインポートすると、読み取り可能性が低下します.
投影を使用して、必要なフィールドのみを取得します.{"a" : {"$size" : 20, $all : ["shampoo", "lotion"]},
{"price":1, "address":1}
このように2回パラメータを入力すると、希望するフィールドのみが表示されます.
ここで0と1はフィールドの値ではありません.
{"a" : {"$size" : 20, $all : ["shampoo", "lotion"]},
{"price":1, "address":1}
このような役割を果たす.
この他にもAggregationについての内容があります.
簡単に言えば、
Reference
この問題について(36日目-2[データベースNoSQL演算子タイプ]), 我々は、より多くの情報をここで見つけました https://velog.io/@jjimgo/코드스테이츠-36-2-데이터베이스-NoSQL-연산자-종류テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol