gpt4 book ai didi

php - mysqli 左连接重复行

转载 作者:行者123 更新时间:2023-11-29 19:18:51 25 4
gpt4 key购买 nike

桌面电脑

id | com       | id_status  
1 testing 1 1
2 testing 2 1
3 testing 3 2
4 testing 4 2

表格更新

id_status | update  
1 update 1
2 update 2
3 update 3


SELECT `update`.`update`, `com`.`com` as comen
FROM `update`
LEFT JOIN `com` ON `update`.`id_status`=`com`.`id_status`

结果:

update 1  
testing 1
update 1
testing 2
update 2
testing 3
update 2
testing 4

更新表结果重复

我已经使用了 group by update.id_status,结果是:

update 1  
testing 1
testing 2
update 3

表 com 仅结果 1 行

编辑--
我从中得到了语法 MySQL LEFT JOIN display duplicate rows

$first = true;  
while($row = $query->fetch_object()){
if($first){
echo $row->update;
$first = false;
echo "<br>";
}
echo $row->comen;
echo "<br>";
}

update 1
testing 1
testing 2
testing 3
testing 4

它只获取 1 个表行

我希望结果如下所示:

update 1  
testing 1
testing 2
update 2
testing 3
testing 4
update 3
...

--

正确的语法或查询如何工作?

最佳答案

试试这个,我想这会解决:-

SELECT `update`.`update`, group_concat(`com`.`com`) as comen
FROM `update`
LEFT JOIN `com` ON `update`.`id_status`=`com`.`id_status`
Group by `update`.`update`

并使用您的 php,如下所示:-

while($row = $query->fetch_object()){  
echo $row->update;
$comen = explode(",", $row->comen);
foreach($comen as $values){
echo "<br>";
echo $values;
}
echo "<br>";
}

关于php - mysqli 左连接重复行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42545295/

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