【问题标题】:PDO Query on joined tables when column names are the same列名相同时对连接表的 PDO 查询
【发布时间】:2013-07-05 12:52:28
【问题描述】:

我正在通过 PDO 对一对连接表运行查询,如下所示:

SELECT table1.id, table2.id, table1.foo, table1.bar 
FROM table1 INNER JOIN table2 ON table1.bar = table2.id;

两个表都有一个id 列,所以当我运行fetchAll() 时,关联数组只包含一个id 字段。这是因为第一个被第二个覆盖了。

有没有办法同时获取id 字段?也许通过将表名包含在数组键中......

【问题讨论】:

  • 没有“PDO 查询”。 PDO 无论如何都不是数据库,而只是一个 API
  • 我明白这一点。如果它与我的问题相关,我使用短语“PDO 查询”表示我正在通过 PDO 运行查询。

标签: mysql pdo


【解决方案1】:

使用别名

SELECT table1.id as t1id, table2.id as t2id
--etc.

【讨论】:

    【解决方案2】:

    试试这个

    SELECT table1.id AS idtable1, table2.id AS idtable2, table1.foo, table1.bar 
    FROM table1 INNER JOIN table2 ON table1.bar = table2.id;
    

    【讨论】:

      猜你喜欢
      • 2019-01-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-03-24
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多