source

정수를 삽입할 때 MongoDB 삽입 플로트

nicesource 2023. 3. 10. 22:07
반응형

정수를 삽입할 때 MongoDB 삽입 플로트

   > db.data.update({'name': 'zero'}, {'$set': {'value': 0}}) 
   > db.data.findOne({'name': 'zero})
    {'name': 'zero', 'value': 0.0}  

Mongo가 정수를 넣게 하려면 어떻게 해야 하나요?

감사해요.

db.data.update({'name': 'zero'}, {'$set': {'value': NumberInt(0)}})

NumberLong을 사용할 수도 있습니다.

조금 더 간단한 구문(적어도 Robomongo에서는)이 나에게 효과가 있었다.

db.database.save({ Year : NumberInt(2015) });

값 유형이 이미 더블인 경우 NumberInt() 또는 NumberLong() 함수를 사용할 때 $set 명령을 사용하여 값을 업데이트해도 double 값을 int로 변경할 수 없습니다.따라서 값 유형을 변경하려면 전체 레코드를 업데이트해야 합니다.

var re = db.data.find({"name": "zero"})
re['value']=NumberInt(0)
db.data.update({"name": "zero"}, re)

JavaScript이므로 'value'에 있는 것은 정수 또는 부동인 숫자입니다.그러나 JavaScript에는 큰 차이가 없습니다.JavaScript 학습:

숫자 데이터 유형

JavaScript의 숫자 데이터 유형은 부동소수점 숫자이지만 분수 구성 요소가 있을 수도 있고 없을 수도 있습니다.소수점이나 분수 성분이 없는 경우 -253 ~ 253 범위의 10진수 정수로 취급됩니다.

언급URL : https://stackoverflow.com/questions/8218484/mongodb-inserts-float-when-trying-to-insert-integer

반응형