加入查询问题

时间:2012-05-06 21:46:02

标签: php sql join

我有2张桌子。我的表格如下。我有一个名为getTag.php的脚本。作为用户的想法想要看到我标记的所有投资组合项目,例如,php。但是,我不只是想这样做:

SELECT t.portfolio_item_id, p.*
FROM tags t
INNER JOIN portfolio p ON t.portfolio_item_id = p.id
WHERE t.$skillArea = '1'

我也希望获得标记表的所有列并加入它们。因此,如果标签表中的php = 1,则获取标签表中的其余列及其值以及投资组合表中相应的投资组合项目行

  • 投资组合

    ID
    ITEM_NAME
    网址

  • 代码

    portfolio_item_id
    PHP
    HTML
    设计
    CSS

    等...

1 个答案:

答案 0 :(得分:2)

SELECT t.*, p.*
FROM tags t
INNER JOIN portfolio p ON t.portfolio_item_id = p.id
WHERE t.$skillArea = '1'

你也可以SELECT *,但我已经包含了t和p来证明你哪里出错了。

  • t是标签表的别名
  • p是投资组合表的别名

  • t。*带回标签表中的所有列

  • p。*带回投资组合表中的所有列

你有t.portfolio_item_id,它只能带回1列,其中*是wildcard,用于返回该表中的所有列。