Amazon dynamodb dynamodb查询中globalSecondaryIndex上的非空查询条件

Amazon dynamodb dynamodb查询中globalSecondaryIndex上的非空查询条件,amazon-dynamodb,Amazon Dynamodb,是否可以向dynamodb查询表达式添加约束,以声明GSI不应为null 有人能举个例子吗 是否可以构造如下所示的查询 new DynamoDBQueryExpression<XXX>() .withHashKeyValues(YYY).withKeyConditionExpression(GSI != NULL); newdynamodbqueryexpression() .withHashKeyValues(YYY).withKeyConditionEx

是否可以向dynamodb查询表达式添加约束,以声明GSI不应为null

有人能举个例子吗

是否可以构造如下所示的查询

new DynamoDBQueryExpression<XXX>()
            .withHashKeyValues(YYY).withKeyConditionExpression(GSI != NULL);
newdynamodbqueryexpression()
.withHashKeyValues(YYY).withKeyConditionExpression(GSI!=NULL);
注:
请告诉我在查询期间而不是在筛选期间是否可以执行此操作?

DynamoDB String属性不能有NULL或空字符串

当您尝试插入NULL时,API应引发以下异常:-

java.lang.IllegalArgumentException: Input value must not be null
com.amazonaws.AmazonServiceException: One or more parameter values were invalid: An AttributeValue may not contain an empty string
当您尝试插入空字符串时,API应引发以下异常:-

java.lang.IllegalArgumentException: Input value must not be null
com.amazonaws.AmazonServiceException: One or more parameter values were invalid: An AttributeValue may not contain an empty string
如果要在某些属性(即哈希或范围键以外的属性)上添加其他筛选器,可以使用以下语法(即withFilterExpression)

不等于运算符为“”

Map eav=newhashmap();
eav.put(“:val1”,新的AttributeValue().with(“Some value”);
DynamoDBQueryExpression queryExpression=新的DynamoDBQueryExpression();
queryExpression.withHashKeyValues(hashKeyValues);
queryExpression.withFilterExpression(“docType:val1”)。WithExpressionAttributeValue(eav);

DynamoDB String属性不能有NULL或空字符串

当您尝试插入NULL时,API应引发以下异常:-

java.lang.IllegalArgumentException: Input value must not be null
com.amazonaws.AmazonServiceException: One or more parameter values were invalid: An AttributeValue may not contain an empty string
当您尝试插入空字符串时,API应引发以下异常:-

java.lang.IllegalArgumentException: Input value must not be null
com.amazonaws.AmazonServiceException: One or more parameter values were invalid: An AttributeValue may not contain an empty string
如果要在某些属性(即哈希或范围键以外的属性)上添加其他筛选器,可以使用以下语法(即withFilterExpression)

不等于运算符为“”

Map eav=newhashmap();
eav.put(“:val1”,新的AttributeValue().with(“Some value”);
DynamoDBQueryExpression queryExpression=新的DynamoDBQueryExpression();
queryExpression.withHashKeyValues(hashKeyValues);
queryExpression.withFilterExpression(“docType:val1”)。WithExpressionAttributeValue(eav);

如果您和我一样,在找到上述问题的答案时登录到本页面,那么以下是您需要查看的线索


如果您和我一样,在找到上述问题的答案时登录到了本页,那么下面是您需要查看的线索


你说GSI null是什么意思?属性或散列/范围键?我的意思是属性的值不应该为空。您能提供示例数据吗?我想检查您的意思是GSI属性是否存在并且没有任何值,以及它是如何存储在DynamoDB表中的?您说GSI null是什么意思?属性或散列/范围键?我的意思是属性的值不应该为空。您能提供示例数据吗?我想检查您的意思是GSI属性是否存在并且没有任何值,以及它是如何存储在DynamoDB表中的?