gpt4 book ai didi

php - mysql通过不返回左表中的所有结果来左连接和分组

转载 作者:行者123 更新时间:2023-11-28 23:50:57 25 4
gpt4 key购买 nike

我有以下表格:

额外问题:

enter image description here

和extra_examples:

enter image description here

我想加入并连接它们,以便返回所有问题,但在每个问题中,我都会显示一个下拉列表,其中包含来自 extra_examples 的所有问题标签。

我目前有这个声明(使用 codeigniter/activerecord):

$this->db->select('extra_questions.*, GROUP_CONCAT(extra_examples.tag) as tag',FALSE);
$this->db->from('extra_questions');
$this->db->join('extra_examples','extra_questions.id = extra_examples.question','left outer');
$this->db->group_by('extra_examples.question');
$this->db->order_by('extra_questions.id');
$query = $this->db->get();
return $query->result_array();

作为 $questions 返回。但是当我遍历 $questions 时:

 <?php foreach ($questions as $i=>$questions_item): ?>
<?php print_r($questions_item['id']); print_r($questions_item['tag']); echo '<br/><br/>' ?>
<?php endforeach ?>

我得到了一些奇怪的结果:

2flower,insect

3

我期望的地方:

2花虫3个4

但是 4 完全不见了。我想确保返回所有问题。我做错了什么?

最佳答案

你的分组依据应该在 extra_questions.id 而不是 extra examples.question 上

关于php - mysql通过不返回左表中的所有结果来左连接和分组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32628321/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com