NodeJS mysql 查询返回错误结果
NodeJS mysql query returning wrong result
我得到的是 [ { 'AVG(Price)': '31000.0000' } ] 而不是 '31000.0000
这是函数
async function getAveragePrice(year) {
const sql = await init();
const [rows] = await sql.query('SELECT AVG(Price) FROM Car where year=
?', [year], (err, result) => {
if (err) {
return null;
}
});
return rows;
}
我正在使用 nodejs mysql2
试试这个:
async function getAveragePrice(year) {
const sql = await init()
const row = await sql.query('SELECT AVG(Price) AS avg_price FROM Car where year=?', year, (err, result) => {
if (err) {
return null
}
return result.avg_price
})
}
- 回调部分多余
- 这是预期的行为,
.query(sql)
returns Promise<array of rows>
行是对象,其中每个键都是相应的字段名称
async function getAveragePrice(year) {
const db = await init();
const [rows] = await db.query('SELECT AVG(Price) as avg FROM Car where year=?', [year])
return rows[0].avg;
}
我得到的是 [ { 'AVG(Price)': '31000.0000' } ] 而不是 '31000.0000
这是函数
async function getAveragePrice(year) {
const sql = await init();
const [rows] = await sql.query('SELECT AVG(Price) FROM Car where year=
?', [year], (err, result) => {
if (err) {
return null;
}
});
return rows;
}
我正在使用 nodejs mysql2
试试这个:
async function getAveragePrice(year) {
const sql = await init()
const row = await sql.query('SELECT AVG(Price) AS avg_price FROM Car where year=?', year, (err, result) => {
if (err) {
return null
}
return result.avg_price
})
}
- 回调部分多余
- 这是预期的行为,
.query(sql)
returnsPromise<array of rows>
行是对象,其中每个键都是相应的字段名称
async function getAveragePrice(year) {
const db = await init();
const [rows] = await db.query('SELECT AVG(Price) as avg FROM Car where year=?', [year])
return rows[0].avg;
}