php - Codeigniter MySQL 一个连接查询,结果中存在列名冲突

标签 php mysql codeigniter orm

我有一个非常常见的常规 JOIN 查询,我发现自己遇到了一些困难。

我的 CI 数据库查询如下所示:

    $this->db->select()
    ->from('user_event')
    ->join('game_bridge', 'user_event.gmeID = game_bridge.gmeID')
    ->where('user_event.memID', $memID);

直到大约一分钟前我才意识到,这两个表都有一个“位置”列,但是这两个列都包含我正在寻找的整体查询结果的唯一数据集。有没有办法给一个位置列或另一个位置列一个别名,这样我就可以在不同的属性名称下访问结果对象?

如果是这样,我如何使用 CI 的数据库类/助手来做到这一点?

最佳答案

如果你想从两个表中获取位置,你必须给其中一个或两个表一个别名 保留 user_event 位置,因为它只是给 game_bridge 起别名,就像 game_bridge.location as game_location

$this->db->select('location,game_bridge.location as game_location')

关于php - Codeigniter MySQL 一个连接查询,结果中存在列名冲突,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12833993/

相关文章:

javascript - 无法使变量成为 map 中心

php - 使用 CodeIgniter 防止 MS SQL 注入(inject)

php - Mysql查询,item包含所有指定的标签

php - $this->db->insert_id() 似乎抹去了我以前的 insert_id 变量值

php - 从我页面的第二个表中删除行的问题

php - 当Mysql数据库中某些字段为NULL时,Mysql无法获取所有行

mysql - 使用连接和分组进行复杂更新

php - Codeigniter - 文件夹名称更改时未找到 404 页面

php - 测试数组中的任何结果是否在特定节点中具有值

PHP二维数组转HTML输入值