Mysql
 sql >> база данни >  >> RDS >> Mysql

Защо MySQL отчита синтактична грешка при FULL OUTER JOIN?

Няма FULL OUTER JOIN в MySQL. Вижте 7.2.12. Опростяване на външното присъединяване и 12.2.8.1. Синтаксис JOIN :

Можете да емулирате FULL OUTER JOIN с помощта на UNION (от MySQL 4.0.0 нататък):

с две таблици t1, t2:

SELECT * FROM t1
LEFT JOIN t2 ON t1.id = t2.id
UNION
SELECT * FROM t1
RIGHT JOIN t2 ON t1.id = t2.id

с три таблици t1, t2, t3:

SELECT * FROM t1
LEFT JOIN t2 ON t1.id = t2.id
LEFT JOIN t3 ON t2.id = t3.id
UNION
SELECT * FROM t1
RIGHT JOIN t2 ON t1.id = t2.id
LEFT JOIN t3 ON t2.id = t3.id
UNION
SELECT * FROM t1
RIGHT JOIN t2 ON t1.id = t2.id
RIGHT JOIN t3 ON t2.id = t3.id


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Библиотеката не е заредена:грешка libmysqlclient.16.dylib при опит за стартиране на 'rails server' на OS X 10.6 с mysql2 gem

  2. Промяна на ограничението за Mysql размер на ред е твърде голям

  3. MySQL - как да направите пощенски код на предната подложка с 0?

  4. MySQL неизвестна колона в клауза ON

  5. Как да разделя изхода от mysqldump на по-малки файлове?