javascript - Azure Functions 中通过整数 SQL 查询 DocumentDB 不起作用

标签 javascript node.js azure azure-cosmosdb azure-functions

我在 Azure Functions 中使用 JavaScript 语言。当使用 Cosmos DB 作为输入时,我无法通过整数作为变量进行查询。例如,我有以下内容:

使用 Azure Cosmos DB 作为我的输入(公司)的函数设置。这是将分区键设置为 {partitionKey} 并将 SQL 查询设置为 SELECT * FROM c where c.random = {randomId}

在函数的代码中,我发送了以下内容作为测试数据:

{
    "randomId": 1,
    "partitionKey": "prospect"
}

这样,我没有得到任何结果。我已经确认我有一个 random 值为 1 的对象。

如果我要使用 random 向集合中添加值为 "1" 的内容,则可以执行以下操作:

{
    "randomId": "1",
    "partitionKey": "prospect"
}

我已使用 DocumentDB API 和 MongoDB API 尝试过此操作,这应该不重要,因为绑定(bind)内置于 Azure Functions 中。我在不同数据集上看到的趋势是,当您将整数参数绑定(bind)到查询或文档 ID 字段中的某些内容时,查询不起作用。

有什么想法可以解决这个问题吗?

编辑:

我已通过可用文档确认这在 C# 中有效。

最佳答案

引用Amor对a similar question的回答。首先,您可以按照此答案中的步骤创建 UDF 以将字符串值转换为整数。然后更改 SQL 查询如下:

SELECT * FROM c where c.random = udf.ConvertToNumber({randomId})

关于javascript - Azure Functions 中通过整数 SQL 查询 DocumentDB 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45529125/

相关文章:

javascript - XMLHttpRequest发送图像文件

sql - 如何将数据库部署到 windows azure sql 数据库?

azure - 无法从 Azure 容器实例连接到 Azure SQL 数据库

azure - 从 Azure Functions node.js 调用 Azure SQL

javascript - 在 Angular2 中操作 DOM 的更好方法

javascript - 为什么具有不同 basemap 的相同两个 geoJSON 特征会出现失真?

json - 使用 bash 读取 package.json 文件的 name 属性

javascript - Babel-node 不会在预设环境中转换扩展运算符

javascript - Mongoose 不将数据保存到 mongodb?

javascript - 如何获得在 iOS Safari 上工作的根 <html> 元素的基于动量的滚动?