Параметризованный ввод с полями документов с помощью Cosmos DB - PullRequest
0 голосов
/ 14 мая 2019

Я хочу использовать параметризованные запросы с полем документа, а также со значением в указанном поле для Cosmos DB. https://docs.microsoft.com/en-us/azure/cosmos-db/how-to-sql-query#parameterized-queries

Например:

SELECT *
FROM Families f
WHERE @field = @value 

Я хочу иметь возможность указать что-то вроде f.lastName для @field и Smith для @value.

Разве это не возможно? Попытка сделать это через .NET SDK, кажется, не работает, независимо от того, что я делаю.

Ответы [ 2 ]

0 голосов
/ 15 мая 2019

Я нашел способ сделать это.

Вы можете использовать Указатель цитируемого свойства

Вот как вы это сделаете:

SELECT *
FROM Families f
WHERE f[@field] = @value 
0 голосов
/ 14 мая 2019

На основании примеров в ссылке , @field = @value не поддерживается.

SELECT *
    FROM Families f
    WHERE f.lastName = @lastName AND f.address.state = @addressState

Если ваш столбец фильтра является гибким, вы можете объединить запрос sql как String самостоятельно.

'SELECT *
FROM Families f
WHERE ' + filterColumn + ' = @value'
...