在构造合并查询是必须遵循以下几条规则:
- 两个select语句在选择列表中的列数目必须一样多,而且对应位置上的列的数据类型必须相同或者兼容。
- 列的名字或者别名是由第一个select语句选择列表决定的。
- 可以为每个select语句都增加一个表示行的数据来源表达书。
- 可以合并操作作为 select into命令的一部分使用,但是into关键字必须放在第一个select语句中;
- 虽然select命令在默认情况下不会去掉重复行,除非明确为它指定distinct关键字,但是在union合并操作与之相反,在默认情况下,union子句将会去掉重复值,如果要保留重复值,需要明确ALL关键字
- 需要对合并的结果集进行排序,需要将order by子句放在最后一个select语句后面,但是它所使用的排序列名是以第一个select语句为主。