0

当我们在 QueryRequest 中使用多个 IN 条件子句时,它仅与 IN 条件中提供的第一项匹配的数据。

我有 Json 格式有

{
[
  {
   CID:1,
   PId:1,
  },
  {
   CID:2,
   PID:2,
  }
],
Age:30,
STATE:[
    "AP", "TS"
],
Brands:[
  "SAMSUNG","NOKIA","LG"
]
} 

var filterExpression = " ((#CID= :CID1 and #PID = :PID1) or (#CID = :CID2 and #PID = :PID2)  and #State in ( :state1, :state2) and #Brands in ( :brands1, :brands2)";
                // Create Query request
                QueryRequest request1 = new QueryRequest
                {
                    TableName = "Table1",
                    IndexName = "Age-index",
                    KeyConditionExpression = "Age = :Age",
                    FilterExpression = filterExpression,
                    ExpressionAttributeNames = expressionAttributeNames,
                    ExpressionAttributeValues = expressionAttributeValues
                };

                var result = await dynamoClient.QueryAsync(request1);
4

0 回答 0