首页 > 解决方案 > 有没有办法将此查询编写为非嵌套查询?

问题描述

select libro.titolo 
from libro 
where not exists( select * 
                    from materia 
                    where materia.titolo = libro.titolo
                );

这是我的查询。我找不到一种在内部没有嵌套查询的情况下编写它的方法。

标签: mysql

解决方案


您可以使用 a LEFT JOINand aWHERE子句来检查是否没有成功连接(如果materia.titolo或 的其他列上没有值,则连接不成功materia)。

SELECT libro.titolo 
FROM libro LEFT JOIN materia ON libro.titolo = materia.titolo 
WHERE materia.titolo IS NULL

dbfiddle.uk 上的演示


推荐阅读