nodejs npm mysql返回单行句柄
我使用node
和npm mysql
来做一些数据库工作。
有没有办法避免使用result[0]
,如果我知道我只会收到一个单一的行?
connection.query({ sql: "SELECT spend FROM `account` WHERE `name` = ? order by date desc limit 1", values: [market.name] }, function (error, results, fields) { market.fee = results[0].age; resolve(market); });
connection.query
的callback函数返回三个值,第二个值是查询的结果集 ,因此是一个值数组 。
因此,即使您确信结果集只包含单个logging,也必须使用result[0]
。
此外,它有些查询自己的规范,决定什么样的数据应该返回。 mysql的SELECT
是以这种方式工作的(尽pipe你可以限制logging),而不像mongodb的db.collection.findOne()
,查询本身知道它总是返回一个logging