我有2张桌子。
表1: t_atc_list
id | a_name | s_title | r_name
------------------------------
80 | ss | 128 | 5
s_title& r_name是外键。
表2: t_s_list
s_id | title
-------------
128 | Song Title
我想在此使用左连接查询..如果't_atc_list'可能位于't_s_list'中,则选择所有't_atc_list'值。
$query=mysql_query("SELECT t.s_title, s.title from t_atc_list t LEFT OUTER JOIN t_s_list s ON t.s_title=s.s_id");
$row=mysql_fetch_array($query);
如果我使用正确加入其工作..
$query=mysql_query("SELECT t.s_title, s.title from t_s_list s RIGHT OUTER JOIN t_atc_list t ON t.s_title=s.s_id");
$row=mysql_fetch_array($query);
是什么原因左连接不起作用但是正确的加入进展顺利?我认为这两个问题都与问题完全相同吗?
答案 0 :(得分:0)
这是一个严格的数据相关问题,您的SQL语法是正确的,但您的数据不能排列。
有关SQL的可视化,请查看此处:http://www.codinghorror.com/blog/2007/10/a-visual-explanation-of-sql-joins.html
此外,如果您进行了正确的连接,这意味着您只是从第二个表中获取数据,并在第一个表中获取空值。我只是在猜测,因为我看不到真正的数据示例。