【问题标题】:laravel multiple join conditions with integer valueslaravel 具有整数值的多个连接条件
【发布时间】:2018-10-05 19:43:11
【问题描述】:

我想加入多个条件:

->join('filters', function($join) {
    $join->on('filters.result_id', '=', 'results.id');
    $join->on('filters.result_filter_id', '=', 2);
    $join->on('filters.value', '>', 1);
})

这会导致错误:

“on 子句”中的未知列“2”

如何在条件连接中使用实际值,而无需雄辩地将其解释为列名?它适用于实际的 SQL 查询:

JOIN filters ON filters.result_id = results.id 
AND filters.result_filter_id = 2 
AND filters.value > 1

【问题讨论】:

    标签: mysql laravel join eloquent


    【解决方案1】:

    如果您想过滤您的加入,请将 on 替换为 where

    如果您想在连接上使用“where”样式子句,您可以在连接上使用 where 和 orWhere 方法

    ->join('filters', function($join) {
        $join->on('filters.result_id', '=', 'results.id')
            ->where('filters.result_filter_id', '=', 2)
            ->where('filters.value', '>', 1);
    })
    

    Documentation

    【讨论】:

      猜你喜欢
      • 2014-01-10
      • 1970-01-01
      • 1970-01-01
      • 2019-01-17
      • 1970-01-01
      • 1970-01-01
      • 2014-04-05
      • 2012-05-28
      相关资源
      最近更新 更多