查找返回的mysql结果中的行数(nodejs)

时间:2013-04-24 18:47:09

标签: mysql node.js

对node.js使用felixge的mysql时,如何向结果对象询问返回的行数?我有一个相当昂贵的查询,所以我不想先运行COUNT(*),然后再次运行查询。

3 个答案:

答案 0 :(得分:39)

如果是select查询,只需获取返回数组的长度。

connection.query(sql, [var1,var2], function(err, results) {
    numRows = results.length;
});

如果是更新/删除查询,则返回的字典将具有affectedRows变量。

connection.query(sql, [var1,var2], function(err, result) {
    numRows = result.affectedRows;
});

答案 1 :(得分:0)

如果您正在使用自述文件中的示例,只需查看rows对象的length属性(即rows.length)。

答案 2 :(得分:-2)

截至2015-04-13的mssql 2.1.2版本:

从DeviceAccountLinks中删除 其中DeviceAccountId = @deviceAccountId 和DeviceType = @deviceType

语句不会产生'undefined'

的结果

我已将声明更改为:

从DeviceAccountLinks中删除 其中DeviceAccountId = @deviceAccountId 和DeviceType = @deviceType; 选择@@ rowcount“rowCount”

获取输出:[{rowCount:1}]