[解決済み] 条件付きでMongoDBを更新する
2022-02-14 19:59:41
質問
ある条件によって、コレクション内のあるフィールドを更新しようとしています。
フィールドを設定したい
active
から
true
である場合、その条件は
true
とし
false
その他
無条件で更新されます
db.consent.update(
{}, //match all
{
$set: {
"active": true
}
},
{
multi: true,
}
)
このように更新する条件を追加したいのですが。
db.consent.update(
{},
$cond: {
if: {
$eq: ["_id", ObjectId("5714ce0a4514ef3ef68677fd")]
},
then: {
$set: {
"active": true
}
},
else: {
$set: {
"active": false
}
}
},
{
multi: true,
}
)
によると
https://docs.mongodb.org/manual/reference/operator/update-field/
はありません。
$cond
演算子で更新します。
このアップデートを1つのコマンドとして実行するには、どのような方法がありますか?
どのように解決するのですか?
<ストライク 無理です。
<ストライク Mongo は、update 文でのフィールドや条件文などの結合をサポートしていません。
参照 https://stackoverflow.com/a/56551655/442351 を以下に示します。
関連
-
[解決済み】MongoDBデータベースの名前を変更する方法とは?
-
[解決済み】MongoDBシェルですべてのコレクションを一覧表示するには?
-
[解決済み] Mongodb find() クエリ : ユニークな値だけを返す (重複はしない) [duplicate].
-
[解決済み] MongoDB Compass フィルタ (クエリ)
-
[解決済み] Mongo Restart Error -- /var/run/mongodb/mongod.pid が存在する
-
[解決済み] 条件付きでMongoDBを更新する
-
[解決済み] or' 条件を含む MongoDB クエリ
-
[解決済み] Mongo で "NOT IN" クエリを実行するにはどうすればいいのですか?
-
[解決済み] MongoDBに "like "を使ってクエリを実行する方法
-
[解決済み] コマンドラインから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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] コマンド1つでmongo DBを停止する方法
-
[解決済み] MongoDB - 管理者ユーザが認証されていない
-
[解決済み] mongo - サーバー 127.0.0.1:27017 に接続できませんでした。
-
[解決済み] 同じデータベース内でコレクションをコピーする最も速い方法は何ですか?
-
[解決済み] ネストされた配列の中で、マッチしたサブドキュメントの要素のみを返す
-
[解決済み] mongodb サービスが開始されない
-
[解決済み] 配列フィールドが空でない MongoDB レコードを検索する
-
[解決済み] MongoDB: 1つのコマンドで複数のドキュメントを更新するには?
-
問題 --- MongoDB --- 複数のデータソースを設定するとエラーが報告される 一致するBeanは1つだが、2つ見つかった
-
[解決済み] MongoDB のオブジェクトを部分的に更新して、新しいオブジェクトを既存のオブジェクトにオーバーレイ/マージするにはどうすればよいですか?