NodeJS:从多语句MySQL查询的结果中获取值

时间:2019-10-19 09:10:07

标签: mysql node.js

我正在使用Node.js中的多语句查询从数据库中获取数据。

我的查询结果具有以下形式:

  [ [ RowDataPacket {
      name: 'Jericho',
      country: 'Canada',
      sex: 'Male',
      age: 12 } ],
  [ RowDataPacket {
      interpretation: 'a complex situation' } ],
  [ RowDataPacket {
      team: 'The Horses',
      colour: 'Purple' } ],
  [ RowDataPacket {
      start_day: 'Monday',
      end_day: 'Friday' } ] ]

我正在尝试从第四个start_day中获取end_dayRowDataPacket的值,以便可以用破折号(例如,周一至周五)将它们连接起来。 我有以下代码:

var days = rows[3]; //rows is the result of the query
console.log(days.start_day);
console.log(days.end_day);

但是console.log()的结果如下:

undefined
undefined

我不确定为什么将start_dayend_day的值打印为undefined。任何见解都会受到赞赏。

1 个答案:

答案 0 :(得分:2)

RowDataPacket是用于创建对象的构造函数,看起来像this new RowDataPacket(start_day, end_day)

您可以使用[0],第0个索引

进行访问
var days = rows[3];
console.log(days[0].start_day);
console.log(days[0].end_day);