完全外连接中的SQL错误1064

时间:2014-06-15 12:36:15

标签: mysql sql join

我收到错误

  

“您的SQL语法有错误;请查看手册   对应于您的MySQL服务器版本,以便使用正确的语法   靠近'full outer join adm_student_academic a on a.rollno = p.username   其中ps.degree ='B'在第1行“

我使用的查询如下:

SELECT p.username, p.firstname, a.matric_obtain_marks
FROM  adm_student_academic a,
      profile_student AS ps,
      PROFILE p FULL OUTER JOIN adm_student_academic a
      ON a.rollno=p.username
WHERE ps.degree='BS(CS)' AND ps.batch = 'Fall 2010'
ORDER BY p.username

我想要实现的结果在以下示例中描述:

假设您有两个表,每个表都有一个列,数据如下:

  

答:1 2 3 4
  B:3 4 5 6

我希望结果如下:

  

a | 1 2 3 4 null

     

b | null null 3 4 6

1 个答案:

答案 0 :(得分:1)

MySQL不支持完全外连接,但可以使用左外连接的并集来模拟:

SELECT a.*, b.* FROM TableA a
LEFT OUTER JOIN TableB b ON (...)
UNION
SELECT a.*, b.* FROM TableB b
LEFT OUTER JOIN TableA a ON (...)
相关问题