Для запроса вы должны предоставить ключ раздела, поэтому с вашей таблицей, как она есть, ваш единственный вариант будет делать сканирование (что дорого и почти никогда не рекомендуется).
Однако вы можете легко добавить Глобальные вторичные индексы , чтобы позволить вам использовать другой ключ в качестве раздела.
В этом случае вы можете добавить GSI с last
в качестве ключа раздела.
Тогда вы сможете запросить глобальный вторичный индекс (обратите внимание на параметр IndexName ) по фамилии.
Однако, если вы хотите пройти маршрут сканирования, вам нужно будет использовать:
docClient.scan({
TableName: 'Patients',
FilterExpression: '#l = :l',
ExpressionAttributeNames: { '#l': 'last' },
ExpressionAttributeValues: { ':l': 'Test' },
Limit: 1
}, (err, data) => { /* callback */ })
Просто помните, что использование сканов может дорого обойтись и быстро поставить нагрузку на ваш стол ( подробнее здесь )