目前有A和B两个表,结构都比较类似。
A表格
| ID | name | state |
|---|---|---|
| 1 | 张三 | 0 |
| 2 | 张三2 | 1 |
B表格
| ID | content | UID | state |
|---|---|---|---|
| 1 | 内容1 | 1 | 1 |
| 2 | 内容2 | 2 | 0 |
现在通过join关联查询之后
查询语句如下:
$users = DB::table('tableA')
->leftjoin('tableB', 'tableA.id', '=', 'tableB.id')
->select(DB::raw('count(*) as user_count, state'))
->where('status', '<>', 1)
->groupBy('tableA.ID')
->get();查询结果出来之后,已经可以分别查出每个用户的对应B表格内容数量。
但是有个新的问题:
如何分别查询出每个用户state=1和state=0的内容数量?
我加了where('tableB.state',0)的限定条件后,左关联就失效了,不显示0数量的用户了,求解
达令说
沧海一幻觉
随时随地看视频慕课网APP
相关分类