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

MongoDBの別の列から同様の名前を設定しますか?


forEach()でループし、別の列から列の値を設定するだけです。ドキュメントを使用してコレクションを作成しましょう-

> db.demo51.insert({"Name1":"Chris","Name":"David","Age":24});
WriteResult({ "nInserted" : 1 })
> db.demo51.insert({"Name1":"Carol","Name":"Mike","Age":22});
WriteResult({ "nInserted" : 1 })
> db.demo51.insert({"Name1":"Sam","Name":"Bob","Age":26});
WriteResult({ "nInserted" : 1 })

find()メソッドを使用してコレクションからすべてのドキュメントを表示する-

> db.demo51.find();

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

{ "_id" : ObjectId("5e27108ccfb11e5c34d8990d"), "Name1" : "Chris", "Name" : "David", "Age" : 24 }
{ "_id" : ObjectId("5e27108dcfb11e5c34d8990e"), "Name1" : "Carol", "Name" : "Mike", "Age" : 22 }
{ "_id" : ObjectId("5e27108ecfb11e5c34d8990f"), "Name1" : "Sam", "Name" : "Bob", "Age" : 26 }

以下は、MongoDBの別の列から同様の名前を設定するためのクエリです-

> db.demo51.find().forEach( function (d) {
...    d.Name1 = d.Name;
...    db.demo51.save(d);
... });

find()メソッドを使用してコレクションからすべてのドキュメントを表示する-

> db.demo51.find();

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

{ "_id" : ObjectId("5e27108ccfb11e5c34d8990d"), "Name1" : "David", "Name" : "David", "Age" : 24 }
{ "_id" : ObjectId("5e27108dcfb11e5c34d8990e"), "Name1" : "Mike", "Name" : "Mike", "Age" : 22 }
{ "_id" : ObjectId("5e27108ecfb11e5c34d8990f"), "Name1" : "Bob", "Name" : "Bob", "Age" : 26 }

  1. MySQLで列名として「from」を作成するにはどうすればよいですか?

    「from」は予約語であるため、バッククォート記号を使用して列名と見なします。ここで、予約語をバックティックで囲んだテーブルを作成します- mysql> create table DemoTable1810      (      `from` varchar(20)      ); Query OK, 0 rows affected (0.00 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable1810 v

  2. MySQLで選択した値が「0」の場合は別の列から選択しますか?

    これには、MySQLでIF()を使用します。構文は次のとおりです- select IF(yourColumnName1=0,yourColumnName2,yourColumnName1) as anyAliasName from yourTableName; テーブルを作成しましょう- mysql> create table demo30 −> ( −> id int not null auto_increment primary key, −> value int, −> original_value int