Я пытаюсь построить выражение фильтра в запросе для поиска данных в DynamodB.
var params = {
TableName: "ContactsTable",
ExpressionAttributeNames: {
"#lastName": "LastName",
"#firstName": "FirstName",
"#contactType": "ContactType"
},
FilterExpression: "contains(#lastName, :searchedName) or contains(#firstName, :searchedName)",
ExpressionAttributeValues: {
":companyContactType": event.query.companyContactType,
":searchedName": event.query.searchedValue
},
KeyConditionExpression: "#contactType = :companyContactType"
};
Пользователи обычно ищут LastName, FirstName (они добавляют запятую к LastName в качестве общего шаблона поиска).Однако данные хранятся в отдельных атрибутах с именами LastName и FirstName, так что они также могут выполнять поиск по ним.
Есть ли способ, которым я могу динамически объединить эти два поля, например, contains(#lastName<append comma>#firstName, :searchedName)
?