I am running an AWS Lambda service written in Node.js that interacts with a DynamoDB database. One of my methods performs an update (AWS.DynamoDB.DocumentClient().update) on
I bumped into a somehow similar problem using attribute_exists, the only difference is, I need to query from the table and get only the record that does have the attribute I need. Using ConditionExpression did not work for me. Thought of sharing it here in case someone is in need.
Here, if the subscriberKey is equal to given param and the attribute_exists (mobileNumber) within the record, it returns true, false otherwise.
var params = {
TableName : table_name,
IndexName: "subsciberKey-index",
KeyConditionExpression: "subscriberKey = :subscriberKey",
FilterExpression: "attribute_exists(mobileNumber)",
ExpressionAttributeValues: {
":subscriberKey": subscriberNo
}
};