Как мне отсканировать таблицу фильтрации для нескольких значений, используя nodejs и DynamoDB? - PullRequest
0 голосов
/ 16 января 2020

У меня следующий запрос:

params2 = {
            TableName: "tableName",
            ProjectionExpression: "C1, C33, C34, C2, C3",
            FilterExpression: "#field1 = :customer and #field2 = :dominios",
            ExpressionAttributeNames: {
                "#field2": "C2"
            },
            ExpressionAttributeValues: {
                ":dominios": "demo.es"
            }
};

Это хорошо работает. Но теперь мне нужно проверить несколько доминант ios. Это означает, что «: domin ios» может быть списком с несколькими значениями:

:dominios = ["demo1.es", "demo2.es"..]

Как это реализовать?

В обычном SQL выражение будет выглядеть примерно так:

Where dominio = "demo1.es" OR dominio = "demo2.es" .....
or 
Where dominio IN ("demo1.es", "demo2.es",...)

Я использую Node Js и DynamoDB

1 Ответ

0 голосов
/ 17 января 2020

Пожалуйста, смотрите пример кода ниже:

var params = {
     TableName: "tableName",
     ProjectionExpression: "C1, C33, C34, C2, C3",
     FilterExpression : "#field2 IN (:dominio1 , :dominio2,:dominio3)",
     ExpressionAttributeNames: {
                "#field2": "C2"
            },
    ExpressionAttributeValues : {
                   ":dominio1" :"demo3",
                   ":dominio2" :"demo2",
                   ":dominio2" :"demo3"
                                 }
                    };

, чтобы узнать больше предметов, которые вы можете передать динамически. посмотрите на этот ответ

...