在我看来,当你创建一个Mongo文档并且有一个{key, value}
有时没有值的字段时,你有两个选择:
{key, null}
即在字段中写入空值这两个选项都很容易查询,您可以在其中查询,{key : null}
另一个查询{key : {$exists : false}}
.
我真的不能想到在应用程序场景中会产生任何影响的两个选项之间的任何差异(除了选项2的存储略少).
任何人都可以告诉我,如果有任何理由,人们会更喜欢这两种方法中的任何一种,为什么呢?
编辑
在提出问题之后,我也发现在这两种情况下索引可能表现不同,即可以为选项2创建稀疏索引,但我仍然试图比较并理解两种方法中完整索引的考虑因素.
我正在尝试使用以下 json 数据进行发布请求。但我需要一个字段,即“注释”作为空字符串值传递。当我这样通过时,出现错误:
'一个或多个参数值无效:AttributeValue 不能包含空字符串'。
我该如何解决这个问题?
//json data which i need to post
{
"storeId": "106",
"addressId": "1",
"managerId": "1",
"name": "Syammohan",
"contactNo": "9656985685",
"notes": "",
"bookingType": "Weddding Consult",
"bookingDate": "2019-05-02",
"bookingTime": "09:00 am"
}
function bookingDone(employee) {
var {
storeId,
addressId,
managerId,
name,
contactNo,
notes,
bookingType,
bookingStatus,
bookingTime
} = req.body
console.log("notes", notes);
const params = {
TableName: "Booking",
Item: {
id: id,
storeId: storeId,
addressId: addressId,
managerId: managerId,
name: name,
contactNo: contactNo,
notes: notes,
bookingType: bookingType,
bookingStatus: bookingStatus, …
Run Code Online (Sandbox Code Playgroud)