此查询试图实现什么目的?
SELECT * FROM X WHERE (X.Y in (select Y from X))
据我所知,它给我带来了与
相同的结果SELECT * FROM X WHERE Y is not NULL
第一个查询还有更多内容吗?对于大型数据集,第一个查询实际上非常慢,因此我想知道是否可以用第二个查询替换它。
最佳答案
你是对的,这两个查询是等价的。
目前还不清楚为什么第一个查询是这样写的。也许曾经看起来不一样。
事实上,您的第二个查询更好,因为它更容易阅读和理解(甚至如您所说更快)。
关于sql - 使用 SELECT * FROM X WHERE Y is not NULL 替换查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62989398/