如何使mysql2中的执行/查询返回数组而不是mysql.QueryResult

问题描述 投票:0回答:1

我已经编写了这个测试查询:

      const [results] = await connection.execute(
        `
          SELECT * FROM providers WHERE id IN (${ids.join(',')})
        `,
      );

但是它会返回

mysql.QueryResult
。鉴于这个数组可能包含数千条记录,我不想做这种荒谬的事情
JSON.parse(JSON.stringify(results))

node.js mysql2
1个回答
0
投票

使用以下方法解构操作结果:

const [rows, fields] = await connection.execute(`SELECT * FROM providers WHERE id IN (${ids.join(',')})`);

在此之后,

rows
是数组,包含查询执行的结果。 您可以迭代数组的值:

for (const provider of providers) {
    // your code here
}
© www.soinside.com 2019 - 2024. All rights reserved.