gpt4 book ai didi

php - mysql连接两个表,一个表有多个匹配行

转载 作者:行者123 更新时间:2023-11-29 07:59:20 24 4
gpt4 key购买 nike

我正在尝试连接两个表。假设第一个表是 test1,另一个表是 test2在 test1 表中我有字段酒店_ID姓名城市国家/地区

然后在 test2 表中我有房间ID酒店_IDROOM_TYPE

所以大多数时候酒店都有多种类型的房间。所以当我使用此查询连接这两个表时

$this->db->like('city', $visitingPlace);
$this->db->or_like('country', $visitingPlace);
$this->db->or_like('name', $visitingPlace);
$this->db->limit($per_page, $page);
$this->db->select('*')
->from('test1')
->join('test2', 'test1.hotel_id = test2.hotel_id', 'left');
$query = $this->db->get();

它重复显示与该酒店 ID 匹配的每种房间类型的酒店名称,但我想在所有房间类型中显示一次酒店名称。我怎样才能做到这一点?

谢谢

最佳答案

问题被标记为“mysql”,所以这里是一个 MySQL 解决方案:

select h.*, group_concat(distinct room_type) as RoomTypes
from test1 h left join
test2 r
on h.hotel_id = r.hotel_id
group by h.hotel_id;

对于每家酒店,这将生成一个列,其中包含酒店的房间类型列表。

关于php - mysql连接两个表,一个表有多个匹配行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24304760/

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