php - 我想计算我在 mysql 中的所有重复值,但我明白了

标签 php mysql laravel-5

我想计算人们从图书馆拿走的书的数量我正在使用 mysql 在 laravel 5 中工作,这里是计算书数的代码

$books= DB::table('libraries')->where('userid', '=', $request->input('userid'))
                     ->select(DB::raw('count(*) as number'))
                     ->groupBy('userid')->get();

我得到这个结果

[{"number":24}]

但我只需要 24 的数字?

我试图通过使用关联数组来获取它但不会工作 $books['number'] 我怎样才能得到这个数字,它是数组吗

最佳答案

Laravel 不返回关联数组,它返回一个对象数组(不需要json_decode)

因此,您应该能够访问您的值 $books[0]->number,正如其他人提到的那样。

但主要问题是您的查询。因为用户 id 在你的 where 子句中,所以按用户 id 分组是多余的,这意味着你可以消除分组并简单地使用 laravel 的 count 函数来获取具有特定行的行数用户编号:

$count = DB::table('libraries')->where('userid', '=', $request->input('userid'))->count();

关于php - 我想计算我在 mysql 中的所有重复值,但我明白了,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33199682/

相关文章:

保存在数据库中时的python datetime问题

php - PHP 5.6.9 上的 Laravel 5 TokenMismatchException

php - 没有 remember_token 的 Laravel 5 身份验证

php - iOS 发送多个推送通知

php - 将 MySQL 结果转换为 JSON

php - 如何从我的扩展中将对象返回到 PHP 用户空间?

mysql - PHPMyAdmin 数据库之间的密码加密

php - 如何安装 Laravel 5.0

php - SQL 查询运算符减号不起作用

php - 反向面包屑问题