sql查询数据总条数后怎么接收count(1)或者count(*)的值?

_香蕉大神 -
sql查询数据总条数后怎么接收count(1)或者count(*)的值?

昨天在写项目时,利用nodejs部署的服务器去查询数据库中所有数据的条数时,出现一个问题,那就是给我返回了一个前端无法接收的字段。

// sql语句是这样的
const sql = 'select count(1) from products'

// nodejs中发送的代码是这样的
res.send({
  status: 200,
  msg: '获取所有数据的条数',
  result
})

当我在前端请求时发现,给我返回的result字段中,键竟然是count(1),如果去引用的话,JavaScript代码会自动将其视为函数的调用,所以会直接报错count is not a function,后来去网上查了一下关于这个问题,虽然没直接找到,但是我发现了一个方法(还是对sql语句不熟悉,看来抽时间要好好学学sql语句了),那就是将上边的sql语句改为:

const sql = 'select count(1) as result from products'

这样就可以了,将count(1)的值存储进result中,然后利用es6的键值对简写方式就可以获取到了,如果as后换成其他变量名,那么发送数据时就应该写成result: 其他变量名了,在前端请求并获取到的数据就是一个正常的键名result了,对应的就是总条数的值。

特别申明:本文内容来源网络,版权归原作者所有,如有侵权请立即与我们联系(cy198701067573@163.com),我们将及时处理。

Tags 标签

前端node.jsjavascriptmysqlsql

扩展阅读

加个好友,技术交流

1628738909466805.jpg