从两个表中选择SQL查询。

时间:2014-10-19 10:44:44

标签: mysql sql

我有一个看起来像这样的查询 $db->query("SELECT A.page_id, A.page_name FROM user_likes_pages as A , user_likes as B WHERE A.page_id = B.page_id AND B.country_id = ".$user_reg." ");
问题是,我想从user_likes中选择一列。我是否必须进行加入,或者我可以以不同的方式进行加入。谢谢。

2 个答案:

答案 0 :(得分:1)

您选择B.columnname。您不需要加入,因为您拥有A.page_id = B.page_id。

答案 1 :(得分:1)

您的查询中有join,但它是隐式的。您应该将查询编写为:

SELECT ulp.page_id, ulp.page_name, ul.<whatever>
FROM user_likes ul JOIN
     user_likes_pages ulp
     ON ul.page_id = ulp.page_id 
WHERE ul.country_id = ".$user_reg."

除了添加显式join语法之外,我还更改了表别名,因此它们是表名的缩写。这样可以更轻松地阅读查询并避免错误。