2016-06-20 5 views
-1

の最初の文字を大文字にするMongoDBのクエリが問題であり、ここでは、既存のデータベース

私はそのようちょうど任意のクエリがあるかどうかを知りたいと思った、私の既存の 、データベース内の名前の最初の文字を大文字にしたいです私は それを可能にすることができます。

私のデータベースには何も書いていないので、多くの名前はフォーマットされていません。lucy、Sean、jonなどです。私はそれらをフォーマットされた方法で作りたいと思う。ルーシー。ショーン、ジョン誰もこれで私を助けることができますか?

ありがとうございます。

+0

です。あなたの問題を解決するためにこれまでに試したことがあるので、助けや助言を得ることができます。 – Shrabanee

+0

https://docs.mongodb.com/manual/reference/operator/aggregation/toUpper/ – user6409738

+0

を試してみましたが、首都体の最初の文字を作成したいので、 – user6409738

答えて

1

これは最適な解決策ではないかもしれません。 以下の提案の唯一の問題は、$ substr:["$ name1"、1、]の "3"を動的に取得することです。 しかし、あなたに始まりますか?以下

db.toupper.aggregate([{$project:{name:{$concat:[{$toUpper:{$substr:["$name1",0,1]}},{$substr:["$name1",1,**3**]}]}}}]) 

だからあなたの努力の結果

db.toupper.find() 

"_id" : ObjectId("5767ca0badb381a5cc0d19cd"), "name1" : "lean" } 
"_id" : ObjectId("5767ca3aadb381a5cc0d19ce"), "name1" : "lean" } 

db.toupper.aggregate([{$project:{name:{$concat:[{$toUpper:{$substr:["$name1",0,1]}},{$substr:["$name1",1,3]}]}}}]) 

"_id" : ObjectId("5767ca0badb381a5cc0d19cd"), "name" : "Lean" } 
"_id" : ObjectId("5767ca3aadb381a5cc0d19ce"), "name" : "Lean" } 
関連する問題