如何更正此SQL/MYSQL完全外部连接问题?

如何更正此SQL/MYSQL完全外部连接问题?,mysql,sql,Mysql,Sql,先生,我的问题是什么 它显示此错误: 1064-您的SQL语法有错误;检查与您的MariaDB服务器版本对应的手册,以了解要使用的正确语法 接近“完全外部连接导线TBL ON votersinfotbl.lfname=领导者tbl.lfname 在第3行按l'分组 我有麻烦了,有人能帮我吗 附:这是给我的顶点的 谢谢大家的帮助 mysql没有完全的外部连接,你可以做两次左连接或者左连接、右连接和并集,实际上就像完全的外部连接一样 `SELECT leaderstbl.lfname AS lead

先生,我的问题是什么

它显示此错误:

1064-您的SQL语法有错误;检查与您的MariaDB服务器版本对应的手册,以了解要使用的正确语法 接近“完全外部连接导线TBL ON votersinfotbl.lfname=领导者tbl.lfname 在第3行按l'分组

我有麻烦了,有人能帮我吗

附:这是给我的顶点的
谢谢大家的帮助

mysql没有完全的外部连接,你可以做两次左连接或者左连接、右连接和并集,实际上就像完全的外部连接一样

`SELECT leaderstbl.lfname AS leaders, IF(COUNT(vfname)>1,COUNT(vfname),0) AS followers, IF(COUNT(household)>1,COUNT(household),0) AS household FROM votersinfotbl WHERE vleaders IN (SELECT vleaders FROM votersinfotbl WHERE vaddress = 'ABACA') AND vleaders NOT IN ('NONE', 'none', 'None', '') AND vaddress = 'ABACA' AND household IN (SELECT vleaders FROM votersinfotbl WHERE vaddress = 'ABACA')

FULL OUTER JOIN leaderstbl ON votersinfotbl.lfname=leaderstbl.lfname
GROUP BY leaderstbl.lfname ORDER BY vleaders ASC` 


在完全外部联接之前使用WHERE子句。试试这个:

select col1..coln from table1 t1 left join table2 t2 on t1.col=t2.col
union
select col1..coln from table1 t1 right join table2 t2 on t1.col=t2.col

您是否正确阅读了错误消息?为什么在WHERE子句之后使用JOIN?代码的可能副本有多个错误-基本上,这没有意义。您应该提供示例数据和期望的结果。
select col1..coln from table1 t1 left join table2 t2 on t1.col=t2.col
union
select col1..coln from table1 t1 right join table2 t2 on t1.col=t2.col
SELECT leaderstbl.lfname                             AS leaders,
       IF(COUNT(vfname) > 1, COUNT(vfname), 0)       AS followers,
       IF(COUNT(household) > 1, COUNT(household), 0) AS household
FROM votersinfotbl
FULL OUTER JOIN leaderstbl ON votersinfotbl.lfname=leaderstbl.lfname
WHERE vleaders IN (SELECT vleaders FROM votersinfotbl WHERE vaddress = 'ABACA')
  AND vleaders NOT IN ('NONE', 'none', 'None', '')
  AND vaddress = 'ABACA'
  AND household IN (SELECT vleaders FROM votersinfotbl WHERE vaddress = 'ABACA')
GROUP BY leaderstbl.lfname
ORDER BY vleaders ASC