Как запросить таблицу DynamoDB с FilterExpression и двумя не проиндексированными полями

В таблице DynamoDB, где первичный ключ и createdAt - это ключ сортировки. Я хочу запросить элементы, в которых country является USA, город San Francisco и улица не Market street. Но даже если в таблице несколько элементов, queryкоманды не возвращают результата. Что я здесь делаю не так:

      import { DynamoDB } from 'aws-sdk';
db = new DynamoDB.DocumentClient({ apiVersion: '2012-08-10', service: new DynamoDB() })

 params = {
  TableName: 'my-table',
  IndexName: 'country-createdAt',
  KeyConditionExpression: 'country = :country',
  FilterExpression: 'street <> :street and city = :city',
  ExpressionAttributeValues: {
    ':country': 'USA',
    ':street': 'Market street',
    ':city': 'San Francisco'
  }
}

let output = await db.query(params);

Результат ниже:

      { Items: [], Count: 0, ScannedCount: 200 }

0 ответов

Другие вопросы по тегам