我正在使用mssql node用于在 SQL Server DB 上执行查询的包。 现在我想将整数数组传递给查询字符串。所以我从 req.query.rids 中获取数组,输出值如下:
var RIDS = JSON.parse(req.query.rids);
logger.info(`${RIDS}`) // result shows: 204294,204303,104354
但是当我使用 IN
运算符检查是否与任何数组值匹配时。我收到错误错误:“204294”附近的语法不正确。
我从中了解到的是,传入的 RID 数组的查询格式不正确。
问题:
如何将数组传递到 mssql 查询字符串中? `
这是一个查询片段,我在其中检查 RIDS 数组中的匹配项:
Left Join [Metrics_DB].[dbo].[AssetBundle]
on [Metrics_DB].[dbo].[Assetdata].RID=[Metrics_DB].[dbo].[AssetBundle].[RID]
where [Asset Sunset Date] is not null and [OSM_Metrics_DB].[dbo].[Assetdata].RID IN ${RIDS}
最佳答案
您需要以(item、item、item)的样式对数组进行字符串化和格式化。
关于javascript - 如何将数组传递到mssql查询字符串中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41567799/