我执行下面的代码;
var array = await Promise.all([
database.query("SELECT COUNT(amount) FROM transactions WHERE date >= now() - INTERVAL 1 DAY;"),
database.query("SELECT COUNT(amount) FROM transactions WHERE date >= now() - INTERVAL 7 DAY;"),
database.query("SELECT COUNT(amount) FROM transactions"),
]);
我期待这样的数组 [1,2,3];
相反,我得到的是;
[ [ RowDataPacket { 'COUNT(amount)': 6 } ],
[ RowDataPacket { 'COUNT(amount)': 7 } ],
[ RowDataPacket { 'COUNT(amount)': 7 } ] ]
我错过了什么?
最佳答案
根据 https://github.com/mysqljs/mysql/issues/1330 ,这是因为它是一个低级库。
您仍然可以使用 [0]['COUNT(amount)']
等访问数组。如果您只想要数字,您可能也会添加更多逻辑。
关于javascript - 从 db 调用返回对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54058183/