最近,联合应用相结合的两个选择结果的一个项目,调试SQL总是
错误的,错误的只是说在工会附近有问题,因为使用组中的SQL,我想也许会不
支持它,因为时间紧,在
程序做治疗第一。但这样完美的程序员的代码要求始终不能放弃,而且
经常有一种感觉,不懂我的心不舒服。
仔细看看MS的联机帮助,并在联盟的描述中找到这样的描述:
如果联盟运营商使用,那么不同的SELECT语句不包含它们自己的ORDERBY或COMPUTE子句。只有ORDERBY或COMPUTE子句只能用最后一个SELECT语句后;本条款适用于最终的组合结果set.group和HAVING子句只能在每个SELECT语句指定的。
在本说明中,并不意味着联合不能用于组。相反,它不能在每个选择中包含
顺序,但在我的句子中,这就是我认为是错误的。尝试
删除顺序,但它不会错。也就是说,使用联合时,
查询组是可用的,但不是
命令或计算。通常,它只能在最后一个阶段使用,并在组合之后对结果集进行
排序。我刚才说的是,组不能用于最终结果集,但它只能用于每个查询。
这是正常用法,有些人想先在每个查询中排序,然后合并,也有不正常的用法,类似于:
从中选择*(从一个表}中选择一个A)联盟…
此外,所有还可以添加到联盟。
默认情况下,联盟将删除重复项目。如果全部都添加了,它就不会过滤和组合所有的结果。如果你能确定每个查询的结果不会有重复的条目,那么最好把它全部拿走,因为它可以提高一些效率。