laravel 中的两个表连接和计算第二个表列
Posted
技术标签:
【中文标题】laravel 中的两个表连接和计算第二个表列【英文标题】:Two table join & count second tables column in laravel 【发布时间】:2021-10-13 19:48:38 【问题描述】:我有两张表,一张是州,另一张是城市表。现在我想将状态表 state_id 与城市表 state_id 连接起来。然后我想获取带有可用城市的州表数据以及该州的数量。 NB:the query will be write with laravel query builder / eloquent
状态表:
state_id| state_name
--------+------------
1 | state a
2 | state b
3 | state c
城市表:
city_id| city_name| state_id|
-------+------------+-----------+
1 | city a| 1|
2 | city b| 2|
3 | city c| 1|
【问题讨论】:
【参考方案1】:$data = \App\Models\State::select('states.state_id', 'states.state_name', DB::raw("count(cities.id) as city_count"))
->leftjoin('cities', function($join)
$join->on('states.state_id', '=', 'cities.state_id');
)
->get();
【讨论】:
以上是关于laravel 中的两个表连接和计算第二个表列的主要内容,如果未能解决你的问题,请参考以下文章
Oracle:将两个表与一个公共列加上第二个表中的一个附加列(最新生效日期)连接以选择其他列