SQL UNION规则

SQL UNION规则,可以看到,UNION非常容易使用,但在进行组合时需要注意几条规则。

  • UNION必须由两条或两条以上的SELECT语句组成,语句之间用关键字UNION分隔(因此,如果组合四条SELECT语句,将要使用三个UNION关键字)。
  • UNION中的每个查询必须包含相同的列、表达式或聚集函数(不过,各个列不需要以相同的次序列出)。
  • 列数据类型必须兼容:类型不必完全相同,但必须是DBMS可以隐含转换的类型(例如,不同的数值类型或不同的日期类型)。

说明:UNION的列名
如果结合UNION使用的SELECT语句遇到不同的列名,那么会返回什么名字呢?比如说,如果一条语句是SELECT prod_name,而另一条语句是SELECT productname,那么查询结果返回的是什么名字呢?

答案是它会返回第一个名字,举的这个例子就会返回prod_name,而不管第二个不同的名字。这也意味着你可以对第一个名字使用别名,因而返回一个你想要的名字。

这种行为带来一个有意思的副作用。由于只使用第一个名字,那么想要排序也只能用这个名字。拿我们的例子来说,可以用ORDER BY prod_name对结果排序,如果写成ORDER BY productname就会出错,因为查询结果里没有叫作productname的列。

如果遵守了这些基本规则或限制,则可以将UNION用于任何数据检索操作。

酷客网相关文章:

赞(0)

评论 抢沙发

评论前必须登录!

 

SQL教程