我的数据库中有一个用户和聊天表。以下是我的表中的一些示例数据:
用户表:
id | name | avatar
1 john default.png
2 mark picture.jpg
Run Code Online (Sandbox Code Playgroud)
聊天表:
id | user_id | friend_id | message | status
1 1 2 hello 0
2 1 2 hi 1
Run Code Online (Sandbox Code Playgroud)
状态列的目的是确定消息是否已被阅读。
status 0 = unread message
status 1 = read message
Run Code Online (Sandbox Code Playgroud)
这是我对所有未读消息进行分组和计数的代码:
$chat = DB::table('chats')
->join('users', 'users.id', '=', 'chats.user_id')
->select('user_id', DB::raw('count(*) as total'))
->where('friend_id', Auth::user()->id)
->where('status',0)
->groupBy('user_id')
->get();
Run Code Online (Sandbox Code Playgroud)
这是我尝试插入用户头像时的代码,但收到此错误:users.avatar' isn't in GROUP BY
$chat = DB::table('chats')
->join('users', 'users.id', '=', 'chats.user_id')
->select('users.avatar','user_id', DB::raw('count(*) as total'))
->where('admin_id', Auth::user()->id) …Run Code Online (Sandbox Code Playgroud) $document = new Document();
$document->title = $request['title'];
$document->description = $request['description'];
Run Code Online (Sandbox Code Playgroud)
当我尝试使用输出上述代码时,echo $document;我得到以下结果:
{"title":"asdfasdf","description":"asdfasdfsadf"}
Run Code Online (Sandbox Code Playgroud)
我想要的是创建我自己的数据数组并输出相同的格式。这是我尝试尝试的代码,但它不起作用:
$data = array(
"title" => "hello",
"description" => "test test test"
);
echo $data;
Run Code Online (Sandbox Code Playgroud)
任何帮助,将不胜感激。谢谢。