javascript - 执行“SELECT COUNT”查询后,无法从 RowDataPacket 访问“COUNT(id)”
问题描述
我想访问包含实际计数元素数量的变量,但我不知道如何。
sql = "SELECT COUNT(id) FROM users WHERE username='" + req.body.username + "' AND password='" + req.body.password + "';";
con.query(sql, function (err, result) {
if (err) throw err;
})
是result
:[ RowDataPacket { 'COUNT(id)': 0 } ]
; 我无法使用语法 result.COUNT(id) 访问数据,因为我收到错误消息:ReferenceError: id is not defined
解决方案
在查询中使用别名count
和更好的抽象使用模板文字
sql = `SELECT COUNT(id) as count FROM users WHERE username=${req.body.username} AND password=${req.body.password}`;
con.query(sql, function (err, result) {
if (err) throw err;
})
对于 [ RowDataPacket { 'total': 0 } ] ,试试这个
sql = `SELECT COUNT(id) as count FROM users WHERE username=${req.body.username} AND password=${req.body.password}`;
con.query(sql, function (err, result) {
if (err) throw err;
else{
let results=JSON.parse(JSON.stringify(result)) // gives you an js object array
} })
推荐阅读
- python - 在烧瓶中创建链接列表
- php - 如何在 laravel 中向手动注册事件监听器添加测试?
- r - r 中的 T 检验:如何使用 lapply 函数更改 t 检验的 x 和 y 参数
- python - 为什么强制转换 Python 的 map() 函数会改变它的效果?
- arrays - 有什么办法可以拆分数组中的哈希值吗?
- python - 有没有更快的方法来查找字典索引?
- java - 以前的列表迭代器在 Java 中不起作用
- java - Telegram [BOT] 我的 Bot 没有在群组中响应,但在个人聊天中运行良好 [JAVA]
- typescript - Typescript 中类型转换和结构类型之间的关系
- sass - 在 SCSS 中将变量名作为参数传递