gpt4 book ai didi

php - 从内部连接获取两个 Id

转载 作者:行者123 更新时间:2023-11-29 06:17:23 24 4
gpt4 key购买 nike

我正在使用 php Codeigniter 框架开发一个网站,但在将表连接在一起时遇到问题。

两张 table 分别是饭菜和餐厅,简单的有版本

meals: id, restaurant_id, price, etc.

restaurants: id, name, location, etc.

为了进行查询,我使用以下代码:

$this->db->join('restaurants', 'restaurants.id = meals.restaurant_id');
$query = $this->db->get('meals');

它返回与运行此相同的结果:

$query = $this->db->query('SELECT * FROM meals INNER JOIN restaurants ON restaurants.id = meals.restaurant_id'); 

问题是,当我以 php 数组或对象(由 codeigniter DB 类提供)的形式访问结果时,只返回一个 id,即餐厅 id,而我需要餐食 id。我怎样才能让它吐出餐食ID?

最佳答案

我对您当前的工具(php/codeigniter/等)没有经验,我假设问题的出现是因为两个表的“id”列具有相同的名称? (这通常不是问题......但也许工具不能正确处理它?)对于 SQL 查询,区分具有相同名称的列的一种方法是在 select 语句中使用别名。这是一个例子:

select
m.id as meal_id,
m.price as meal_price,
r.id as restaurant_id,
r.name as restaurant_name,
r.location as restaurant_location
from meals as m
inner join restaurants as r on r.id = m.restaurant_id

关于php - 从内部连接获取两个 Id,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5684430/

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