MongoDB
 Computer >> コンピューター >  >> プログラミング >> MongoDB

MongoDBの既存のレコードを削除して更新しますか?


MongoDBの既存のレコードを削除および更新する$pull演算子のみを使用できます。まず、ドキュメントを使用してコレクションを作成しましょう-

> db.removeDemo.insertOne(
...    {
...       "UserName" : "Larry",
...       "UserDetails" : [
...          {
...             "_id" : 101,
...             "UserEmailId" : "[email protected]",
...          }
...       ]
...    }
... );
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5cc7f9f88f9e6ff3eb0ce446")
}
> db.removeDemo.insertOne(
...    {
...       "UserName" : "Mike",
...       "UserDetails" : [
...          {
...             "_id" : 102,
...             "UserEmailId" : "[email protected]",
...          }
...       ]
...    }
... );
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5cc7f9f98f9e6ff3eb0ce447")
}

以下は、find()メソッドを使用してコレクションからすべてのドキュメントを表示するためのクエリです-

> db.removeDemo.find().pretty();

これにより、次の出力が生成されます-

{
   "_id" : ObjectId("5cc7f9f88f9e6ff3eb0ce446"),
   "UserName" : "Larry",
   "UserDetails" : [
      {
         "_id" : 101,
         "UserEmailId" : "[email protected]"
      }
   ]
}
{
   "_id" : ObjectId("5cc7f9f98f9e6ff3eb0ce447"),
   "UserName" : "Mike",
   "UserDetails" : [
      {
         "_id" : 102,
         "UserEmailId" : "[email protected]"
      }
   ]
}

$ pullクエリを実装して、既存のレコードを削除および更新しましょう-

> db.removeDemo.update(
...    {"_id": ObjectId("5cc7f9f98f9e6ff3eb0ce447")},
...    { "$pull": { "UserDetails": {"_id": 102}}}
... );
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })

オブジェクトが削除されたかどうかを確認するために、コレクションからドキュメントを表示してみましょう-

> db.removeDemo.find().pretty();

これにより、次の出力が生成されます-

{
   "_id" : ObjectId("5cc7f9f88f9e6ff3eb0ce446"),
   "UserName" : "Larry",
   "UserDetails" : [
      {
         "_id" : 101,
         "UserEmailId" : "[email protected]"
      }
   ]
}
{
   "_id" : ObjectId("5cc7f9f98f9e6ff3eb0ce447"),
   "UserName" : "Mike",
   "UserDetails" : [ ]
}

  1. 最後のレコードを選択してMySQLで更新しますか?

    このために、ORDER BYDESCLIMITを使用できます。まずテーブルを作成しましょう- mysql> create table DemoTable    -> (    -> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,    -> Name varchar(100)    -> ); Query OK, 0 rows affected (0.59 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql

  2. MySQLの列を更新し、末尾の下線値を削除します

    末尾の値を削除するには、以下の更新構文のようにTRIM()を使用します- update yourTableName set yourColumnName=trim(trailing '_' from yourColumnName);を更新します まずテーブルを作成しましょう- mysql> create table DemoTable1521    -> (    -> StudentCode varchar(20)    -> ); Query OK, 0 rows affected (1.