union和unionall區別如下:
區別1:取結果的交集
1、union:對兩個結果集進行並集操作,不包括重復行,相當於distinct,同時進行默認規則的排序。
2、unionall:對兩個結果集進行並集操作,包括重復行,即所有的結果全部顯示,不管是不是重復。
區別2:獲取結果後的操作。
1、union:會對獲取的結果進行排序操作。
2、unionall:不會對獲取的結果進行排序操作。
區別3:
1、union看到結果中ID=3的只有壹條。
select*fromstudent2whereid<4。
union:select*fromstudent2whereid>2andid<6。
2、unionall結果中ID=3的結果有兩個。
select*fromstudent2whereid<4。
unionall:select*fromstudent2whereid>2andid<6。