gpt4 book ai didi

php - 连接两个表并添加具有相同列id的数据

转载 作者:行者123 更新时间:2023-11-29 12:07:32 25 4
gpt4 key购买 nike

我使用的是 Laravel 4.2
我有两个表“问题”和“投票”
在我的问题表中,我有类似的列

  • id,
  • id_user,
  • 主题
  • 正文

在我的投票表中,我有类似的列

  • id,
  • id_question,
  • id_user,
  • 喜欢
  • 不喜欢

用户只能投票一次,因此每个用户的喜欢和不喜欢值为 0-1,id_question 具有来自该问题的 id问题表。现在你想根据每个问题的得票数对问题进行降序排序。

如何对选票进行求和并对它们进行排序。这是我尝试过的,但它只显示第一个问题的计数

$questions=Question::leftJoin('votes', 'questions.id', '=', 'votes.id_question')
->groupBy('questions.id')->sum('likes');

return json_encode($questions);

在获得计数后,我可以使用 orderBy('likes','DESC')->get(); 按降序对它们进行排序;但如何获得点赞总数呢?

最佳答案

试试这个:

$questions=Question::leftJoin('votes', 'questions.id', '=', 'votes.id_question')
->select(DB::raw('questions.id, SUM(votes.likes) as likes'))
->groupBy('questions.id'‌​)
->get();

关于php - 连接两个表并添加具有相同列id的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31219669/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com