根据where子句从表中选择一列,然后将其与另一个表中的另一列匹配

时间:2013-04-24 10:19:56

标签: php mysql

我有一个名为$generic的变量,它被传递到加载SQL查询的函数中,这用于与表{{1}中的slug列形成匹配}};所以在这个例子中,我们可以说cms_web_pages等于'bar',然后查询匹配行的$generic,并使用id匹配第二个表id中的行列cms_web_page_content然后从表page_id中获取所有数据以放置在数组中。

表“cms_web_pages”:

cms_web_page_content

表“cms_web_page_content”:

id | title | slug
-----------------
1  | foo   | bar
2  | bar   | foo

SQL查询:

id | title | content | position | page_id
-----------------------------------------
1  | foo   | bar     | 1        | 1
2  | bar   | foo     | 2        | 1
3  | doh   | doh     | 1        | 2

提前感谢任何可以提供帮助的人。

1 个答案:

答案 0 :(得分:1)

Use as :
"SELECT page.*, content.*
                     FROM cms_web_pages AS page
                     LEFT JOIN cms_web_page_content AS content
                     ON (page.id = content.page_id)

                     WHERE page.slug = '".$generic."'

                     ORDER BY content.position ASC"