如何在 phpmyadmin 中使用完全加入?
Posted
技术标签:
【中文标题】如何在 phpmyadmin 中使用完全加入?【英文标题】:How to use the full join in phpmyadmin? 【发布时间】:2020-11-20 13:31:28 【问题描述】:我想使用完全连接加入我的两个名为inspector 和detector 且具有相同列Detection_ID 的表 我也使用了完全外连接,但仍然出现同样的错误。
错误信息 #1064 - 您的 SQL 语法有错误;检查与您的 MariaDB 服务器版本相对应的手册,了解在“inspector FULL JOIN detection ON inspector.D”附近使用的正确语法。D
我正在使用查询。
'SELECT * inspector FULL JOIN detection ON inspector.Detection_ID =detector.Detection_ID;'
查询或平台是否有错误?
【问题讨论】:
mysql 不支持full join
。请提供样本数据和期望的结果,以便提出替代方案。
【参考方案1】:
如错误消息所示,MariaDB 不支持FULL JOIN
。我会推荐:
SELECT i.*, d.*
FROM inspector LEFT JOIN
detector d
ON i.Detection_ID = d.Detection_ID
UNION ALL
SELECT i.*, d.*
FROM detector d LEFT JOIN
inspector i
ON i.Detection_ID = d.Detection_ID
WHERE i.Detection_ID IS NULL;
第一个子查询获取inspector
中的所有行,无论detector
中是否存在匹配项。第二个返回detector
中不在inspector
中的行。
也就是说,我猜想名为detection_ID
的列应该在detector
中包含所有有效值。这表明FULL JOIN
是不必要的。
【讨论】:
以上是关于如何在 phpmyadmin 中使用完全加入?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 phpMyAdmin 中轻松访问所有帖子标题以从 WooCommerce 进行编辑?