首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >:连接两个表会使输出相乘

:连接两个表会使输出相乘
EN

Stack Overflow用户
提问于 2021-07-08 17:53:25
回答 1查看 33关注 0票数 0

概括起来,我的第一个表的行被乘以第二个表中的行数,这可能是由于我的联接:

表1:(bbr_group)我只有两行

1

表2:(bbr_group_type)我只需要得到group_type_name,由group_type_id加入

2

控制器:

代码语言:javascript
复制
public function fetchgroup(){
    $all_groups = HmsBbrGroup::join('hms_bbr_group_type', 'hms_bbr_group.group_type_id', '=', 'hms_bbr_group.group_type_id')
                               ->orderBy('group_id', 'ASC')->get();
    return response()->json([
        'all_groups'=>$all_groups,
    ]);
}

表:(使用ajax)

代码语言:javascript
复制
                success: function (response){
                    var tbody="";
                    $.each(response.all_groups, function (key, group) {
                    tbody+=`
                        <tr>
                            <td><p class="font-weight-bold mb-0">${group.group_name}</p>${group.group_description}</td>
                            <td><p>${group.group_type_name}</p></td>
                            <td><p>users here</p></td>
                            <td><p>status here</p></td>
                            <td>
                                <button type="button" value="${group.group_id}" class="edit_group btn btn-outline-secondary"><i class="fas fa-edit"></i> Edit</button>
                                <button type="button" value="${group.group_id}" class="delete_group btn btn-outline-secondary"><i class="fas fa-trash"></i> Delete</button>
                            </td>
                        </tr>`;
                    });
                    
                    $('#main-group-list tbody').html(tbody)
                }

下面是输出的情况:可以看到,即使只有两行,它也显示了第二个表中的每个组名的行。

3.

我需要显示hms_bbr_group中只有两行的表和左边的join group_type_name。在这种情况下,两者都是“将军”。

我不确定控制器或表中的联接是否是重复的原因。如果这句话正确的话,我想要一些反馈:

代码语言:javascript
复制
$all_groups = HmsBbrGroup::join('hms_bbr_group_type', 'hms_bbr_group.group_type_id', '=', 'hms_bbr_group.group_type_id')

任何帮助都会很好。谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-07-08 19:09:19

你的加入条件不对。在equal的两边使用hms_bbr_group表。我想这会是这样的:

代码语言:javascript
复制
$all_groups = HmsBbrGroup::join('hms_bbr_group_type', 'hms_bbr_group.group_type_id', '=', 'hms_bbr_group_type.group_type_id')
                          ->orderBy('group_id', 'ASC')->get();
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68306535

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档