php - 如何在从数据库中检索数据时隐藏重复数据
问题描述
我有这个功能:
public function readData(){
$TableB1 = \DB::table('users')
->join('group_user', 'users.id', '=', 'group_user.user_id')
->join('groups', 'groups.id', '=', 'group_user.group_id')
->join('meetings', 'users.id', '=', 'meetings.owned_by_id')
->select(
'users.name as name',
'group_user.user_id as id',
'groups.name as groupname',
'meetings.owned_by_id as meetings'
)
->groupBy('users.id')
->get();
我收到此错误:
当我删除groupBy
它可以工作但重复数据的部分时,它会返回如下数据:
[{"name":"Mohamed Adel","id":6,"groupname":"Team Mohamed","meetings":6},{"name":"Mohamed Adel","id":6,"groupname":"Team Mohamed","meetings":6},{"name":"Norman Osborn","id":2,"groupname":"Team Mohamed","meetings":2},{"name":"Harry Osborn","id":3,"groupname":"Team Harry","meetings":3}]
谢谢你。
解决方案
用这个
public function readData()
{
$TableB1 = \DB::table('users')
->join('group_user', 'users.id', '=', 'group_user.user_id')
->join('groups', 'groups.id', '=', 'group_user.group_id')
->join('meetings', 'users.id', '=', 'meetings.owned_by_id')
->select(
'users.id as user_id',
'users.name as name',
'group_user.user_id as id',
'groups.name as groupname',
'meetings.owned_by_id as meetings'
)
->groupBy('user_id')
->get();
将 config\database.php 更改为
'mysql' => [
'driver' => 'mysql',
'host' => env('DB_HOST', 'localhost'),
'port' => env('DB_PORT', '3306'),
'database' => env('DB_DATABASE', 'forge'),
'username' => env('DB_USERNAME', 'forge'),
'password' => env('DB_PASSWORD', ''),
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
'strict' => false, // must be false
'engine' => null
],
推荐阅读
- c# - 使用日期时间选择器将日期插入数据库
- spring-boot - HTTP2 ERR CONNECTION CLOSED(开销太大)
- powerbi - 使用动态 URL 链接到 Power BI 中同一报表中的钻取页面
- apple-watch - Apple Watch 并发症更新限制
- javascript - 如何在我的 evenlistener 上传递一个参数而不在页面加载时触发该函数?
- oracle-sqldeveloper - 拆分源数据以获得特定的数据预言机
- haskell - 为什么 kleisli 组合需要一个纯值?
- reactjs - 当客户端托管 MERN 堆栈时,API 调用不会转到服务器
- java - Azure 将 blob 容器复制到另一个具有不同层的 blob 容器 [java]
- php - 在 /var/www/html/projectname/bootstrap/app.php 中找不到类 'illuminate\foundation\application'