【问题标题】:Counting points in Laravel's Eloquent or plain SQL在 Laravel 的 Eloquent 或普通 SQL 中计算点数
【发布时间】:2018-08-15 17:27:41
【问题描述】:

我有两张桌子

访问:

|id | start | end | name | location | user_id

行动:

|id | time | name | location | points

我需要选择所有访问,并为每个时间大于开始且小于结束且名称和位置相同的操作获得总分。

我想添加“visit_id”列,但项目已经在运行,记录所有内容的系统由另一家公司维护,所以我可能必须加入。

知道如何处理它吗?

【问题讨论】:

    标签: mysql sql laravel join eloquent


    【解决方案1】:

    这应该可以解决问题:

    SELECT visit.id, SUM(action.points) FROM visit
    JOIN action ON visit.name = action.name 
        AND visit.location = action.location
        AND visit.start <= action.time
        AND action.time < visit.end
    GROUP BY visit.id
    

    【讨论】:

      猜你喜欢
      • 2013-07-27
      • 1970-01-01
      • 2019-11-03
      • 1970-01-01
      • 2016-08-12
      • 2021-06-13
      • 2019-01-15
      • 1970-01-01
      • 2017-05-07
      相关资源
      最近更新 更多