DynamoDB FilterExpression not returning correct results with multiple AND operators









up vote
0
down vote

favorite












I have a Lambda function in Nodejs which has DynamoDB query parameters as following with params.FilterExpression previously set and appended with an AND operator:



params.FilterExpression = `attribute_exists(#i) AND #i = :i AND $params.FilterExpression`;
params.ExpressionAttributeNames['#i'] = 'ipName';
params.ExpressionAttributeValues[':i'] = 'Test 123';


The query is executed successfully, I get the items but with wrong ipName, they should have ipName = 'Test 123', however I see ipName = 'Test 1200' inside the items.










share|improve this question





















  • I'm not a big fan of your self-referential interpolation on params.FilterExpression, but hopefully it's not a problem. What did params.FilterExpression contain prior to the interpolation?
    – jarmod
    yesterday














up vote
0
down vote

favorite












I have a Lambda function in Nodejs which has DynamoDB query parameters as following with params.FilterExpression previously set and appended with an AND operator:



params.FilterExpression = `attribute_exists(#i) AND #i = :i AND $params.FilterExpression`;
params.ExpressionAttributeNames['#i'] = 'ipName';
params.ExpressionAttributeValues[':i'] = 'Test 123';


The query is executed successfully, I get the items but with wrong ipName, they should have ipName = 'Test 123', however I see ipName = 'Test 1200' inside the items.










share|improve this question





















  • I'm not a big fan of your self-referential interpolation on params.FilterExpression, but hopefully it's not a problem. What did params.FilterExpression contain prior to the interpolation?
    – jarmod
    yesterday












up vote
0
down vote

favorite









up vote
0
down vote

favorite











I have a Lambda function in Nodejs which has DynamoDB query parameters as following with params.FilterExpression previously set and appended with an AND operator:



params.FilterExpression = `attribute_exists(#i) AND #i = :i AND $params.FilterExpression`;
params.ExpressionAttributeNames['#i'] = 'ipName';
params.ExpressionAttributeValues[':i'] = 'Test 123';


The query is executed successfully, I get the items but with wrong ipName, they should have ipName = 'Test 123', however I see ipName = 'Test 1200' inside the items.










share|improve this question













I have a Lambda function in Nodejs which has DynamoDB query parameters as following with params.FilterExpression previously set and appended with an AND operator:



params.FilterExpression = `attribute_exists(#i) AND #i = :i AND $params.FilterExpression`;
params.ExpressionAttributeNames['#i'] = 'ipName';
params.ExpressionAttributeValues[':i'] = 'Test 123';


The query is executed successfully, I get the items but with wrong ipName, they should have ipName = 'Test 123', however I see ipName = 'Test 1200' inside the items.







amazon-web-services nosql amazon-dynamodb






share|improve this question













share|improve this question











share|improve this question




share|improve this question










asked yesterday









Faizan Ali

336416




336416











  • I'm not a big fan of your self-referential interpolation on params.FilterExpression, but hopefully it's not a problem. What did params.FilterExpression contain prior to the interpolation?
    – jarmod
    yesterday
















  • I'm not a big fan of your self-referential interpolation on params.FilterExpression, but hopefully it's not a problem. What did params.FilterExpression contain prior to the interpolation?
    – jarmod
    yesterday















I'm not a big fan of your self-referential interpolation on params.FilterExpression, but hopefully it's not a problem. What did params.FilterExpression contain prior to the interpolation?
– jarmod
yesterday




I'm not a big fan of your self-referential interpolation on params.FilterExpression, but hopefully it's not a problem. What did params.FilterExpression contain prior to the interpolation?
– jarmod
yesterday

















active

oldest

votes











Your Answer






StackExchange.ifUsing("editor", function ()
StackExchange.using("externalEditor", function ()
StackExchange.using("snippets", function ()
StackExchange.snippets.init();
);
);
, "code-snippets");

StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "1"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);

StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);

else
createEditor();

);

function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);



);













 

draft saved


draft discarded


















StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53237337%2fdynamodb-filterexpression-not-returning-correct-results-with-multiple-and-operat%23new-answer', 'question_page');

);

Post as a guest



































active

oldest

votes













active

oldest

votes









active

oldest

votes






active

oldest

votes















 

draft saved


draft discarded















































 


draft saved


draft discarded














StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53237337%2fdynamodb-filterexpression-not-returning-correct-results-with-multiple-and-operat%23new-answer', 'question_page');

);

Post as a guest














































































這個網誌中的熱門文章

How to read a connectionString WITH PROVIDER in .NET Core?

In R, how to develop a multiplot heatmap.2 figure showing key labels successfully

Museum of Modern and Contemporary Art of Trento and Rovereto