这让我想起了Eric Lippert提出的问题:“为什么C#没有Java功能X?”
人们不会从一开始就删除另一种东西来构建一种语言,而是一无所有并决定要实现的功能。
在某些时候,配置单元既不支持IN EXISTS子查询,也不支持LEFT SEMI JOIN。然后,有人建议他们添加LEFT SEMI
JOIN。既然已经使用了该语言,那么它就消除了实现IN
EXISTS子查询的一些原因,因为这两个子句在语义上是等效的。

这让我想起了Eric Lippert提出的问题:“为什么C#没有Java功能X?”
人们不会从一开始就删除另一种东西来构建一种语言,而是一无所有并决定要实现的功能。
在某些时候,配置单元既不支持IN EXISTS子查询,也不支持LEFT SEMI JOIN。然后,有人建议他们添加LEFT SEMI
JOIN。既然已经使用了该语言,那么它就消除了实现IN
EXISTS子查询的一些原因,因为这两个子句在语义上是等效的。