Mysql Join防止从两个表合并同名列

时间:2013-12-18 10:03:06

标签: mysql

我使用类似这样的东西来连接表:

SELECT p.*, g.id, g.hold FROM pictures AS p 
 INNER JOIN galleries as g ON g.id = p.gallery_id
WHERE p.views > $views AND g.hold <> 1

因此,我从第二个表ID获得g,但我希望它来自p。因此,ID替换为g.id并包含两个具有不同名称的相同值列(ID和GALLERY_ID)

[0] => Array
    (
        [ID] => 35 <- same as GALLERY ID?... :( must be p.ID
        [GALLERY_ID] => 35
        [HOLD] => 0
    )

数组创建:

while( ($row=mysql_fetch_assoc($result)) )
    $arr_db_rows[] = $row;

1 个答案:

答案 0 :(得分:1)

- &GT;而不是'SELECT p。*'而是使用'p.column_name'添加'p'列。避免'p.gallary_id'。 - &GT;或者,只需从'SELECT'列名中删除'g.id',您将只有gallary_id列。你仍然可以在'where'子句中使用'g.id'。