[解決済み] boolean フィールドを "not true" (例: false または non existent) としてクエリする。
2023-03-24 12:01:27
質問
MongoDBのクエリで何か非常に基本的なことを見逃していると思うのですが、この単純な条件を得ることができないようです。
このコレクションを考えてみましょう。
> db.tests.find()
{ "_id" : ObjectId("..."), "name" : "Test1" , "deleted" : true}
{ "_id" : ObjectId("..."), "name" : "Test2" , "deleted" : false}
{ "_id" : ObjectId("..."), "name" : "Test3" }
私は単に"not deleted"であるすべての項目を照会したいと思います。
私は、"deleted"フラグがtrueに設定されているアイテムを見つける方法を知っています。
> db.tests.find({deleted:true})
{ "_id" : ObjectId("..."), "name" : "Test1" , "deleted" : true}
しかし、どのようにすれば
"deleted"
を持たない項目 (例えば、上記のクエリを否定する、言い換えれば、すべての項目が
"deleted"
フィールドを持たないか、あるいは値
false
推測でやってみたこと (笑わないでください...)
> db.tests.find({$not : {deleted: true}})
(結果を返さない)
> db.tests.find({$not : {$eq:{deleted:true}}})
エラーが発生しました。{ "$err" : "無効な演算子: $eq", "code" : 10068 }.
> db.tests.find({deleted:{$not: true}})
エラーが発生しました。{ "$err" : "無効な$notの使用", "code" : 13041 }.
> db.tests.find({deleted:{$not: {$eq:true}}})
エラーが発生しました。{ "$err" : "無効な$notの使用", "code" : 13034 }.
何が足りないのでしょうか?
どのように解決するのですか?
db.tests.find({deleted: {$ne: true}})
ここで
$ne
はquot;not equal"を表します。 (
mongodbの演算子に関するドキュメント
)
関連
-
[解決済み] MongoDB Compass: select distinct フィールド値
-
[解決済み] mongoimport : 'error validating settings: positional argument is only one allowed' (設定の検証エラー:位置引数は1つしか許可されません。
-
[解決済み] mongodb サーバーに接続しようとすると、mongo コマンドが認識されません。
-
[解決済み] MongoDB: 1つのコマンドで複数のドキュメントを更新するには?
-
[解決済み】Dockerコンテナのディスク使用量を分析する方法
-
[解決済み】MongoDBのシェルで20以上のアイテム(ドキュメント)をプリントアウトする方法は?
-
[解決済み】MongoDB: 1つのフィールドですべてのドキュメントを更新する
-
[解決済み] pymongoでmongodbをソートする方法
-
[解決済み] MongoDB: フィールドがNULLまたは未設定のレコードを検索するには?
-
[解決済み] MongoDBのマルチテナントデータベースへの推奨されるアプローチとは?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】SocketException: アドレスはすでに使用中です。
-
[解決済み】MongoDBデータベースの名前を変更する方法とは?
-
[解決済み] MongoDBでフィールドが存在することを確認する
-
[解決済み] コマンド1つでmongo DBを停止する方法
-
[解決済み] 同じデータベース内でコレクションをコピーする最も速い方法は何ですか?
-
[解決済み] SocketException: アドレスはすでに使用中です MONGODB
-
[解決済み】Dockerコンテナのディスク使用量を分析する方法
-
[解決済み] MongoDBの$unwind演算子って何?
-
[解決済み] MongoDB: フィールドがNULLまたは未設定のレコードを検索するには?
-
[解決済み] Mac OS のターミナルからリモートの Mongo サーバーに接続するにはどうしたらいいですか?