Laravel 5.4“加入”查询
Posted
技术标签:
【中文标题】Laravel 5.4“加入”查询【英文标题】:Laravel 5.4 'join' Query 【发布时间】:2019-04-15 02:22:37 【问题描述】:public function scopeGetCompanyInfoWithBank($query, $comCode)
$query->select(
DB::raw("CONCAT(rtrim(COM_NAME), '') AS COM_NAME"),
DB::raw("CONCAT(rtrim(COM_ADD1), '') AS COM_ADD1"),
DB::raw("CONCAT(rtrim(COM_ADD2), '') AS COM_ADD2"),
DB::raw("CONCAT(rtrim(COM_ADD3), '') AS COM_ADD3"),
DB::raw("CONCAT(rtrim(COM_ADD4), '') AS COM_ADD4"),
DB::raw("CONCAT(rtrim(COM_BNKCODE), '') AS COM_BNKCODE"),
DB::raw("CONCAT(rtrim(BANK_NAME), '') AS BANK_NAME") // NOT WORKING.
)
->join("bank", function ($join)
$join->on('bank.BANK_CODE', "=", 'COM_BNKCODE');
)
->where('COM_CODE', '=', $comCode)
->get();
2 个表:“公司”和“银行”。
“COM_CODE”:“公司”的主键。
“BANK_CODE”:“银行”的主键。
'COM_BNKCODE':'company' 的外键 = 'BANK_CODE'。
问题: 无法从上述查询中获取“BANK_NAME”。
【问题讨论】:
请解释一下“无法获取银行名称”是什么意思,您有误吗?请发帖。 【参考方案1】:希望对你有帮助
公共函数作用域GetCompanyInfoWithBank($query, $comCode) $this->data['query'] = company::join('bank','BANK_CODE','=','company.COM_BNKCODE') ->select('company.COM_NAME','company.COM_ADD1', 'company.COM_ADD2','company.COM_ADD3', 'company.COM_ADD4','company.COM_BNKCODE') ->where('company.COM_CODE', '=', $comCode) ->获取();
【讨论】:
,这对我一点帮助都没有查询。以上是关于Laravel 5.4“加入”查询的主要内容,如果未能解决你的问题,请参考以下文章
在 Laravel 5.4 的查询生成器中添加 lists() 方法
yajra/laravel-datatables 搜索不适用于 laravel 5.4
Laravel 5.4 查询生成器使用 orWhere 子句时缺少参数 2
yajra / laravel-datatables搜索不适用于laravel 5.4