Amazon DynamoDB - 扫描/查询表达式中的析取(OR)

时间:2014-08-25 15:08:14

标签: amazon-dynamodb

我正将部分应用程序从MySQL迁移到DynamoDB。 我试图重写的其中一个查询看起来像(在SQL中):

select .... from ... where value is null or value = false;

我想知道,我怎么能在DynamoDB中重写disjunction(这个OR子句)? 目前我只是检查值是否为假:

scanExpression.addFilterCondition("value", new Condition().
    withComparisonOperator(ComparisonOperator.EQ).
    withAttributeValueList(new AttributeValue().withN(BOOLEAN_FALSE)));

任何帮助/建议都将受到高度赞赏! 提前谢谢。

1 个答案:

答案 0 :(得分:0)

您可以将Conditional Operator作为扫描的一部分,同时使用ANDOR个多个条件。只需使用ScanRequest.setConditionalOperator API并添加多个条件。

作为一个注释,你实际上并不存储NULL作为项目的属性;相反,将缺少属性视为NULL