一、UNION ALL 与UNION的区别
Union:对两个结果集进行并集操作,不包括重复行,同时进行默认规则的排序;
Union All:对两个结果集进行并集操作,包括重复行,不进行排序;
union all的效率比union快的多,如果可以确认合并的结果集中不包含重复数据的话,那么就用union all
里面排序不起作用,放在最外面再进行排序
(SELECTnull as video_comp_info_id,null as camera_id,null as create_time,null as publish_flag,null as publish_time,null as video_type,push_table.video_push_id,push_table.video_is_push,push_table.video_urgent,push_table.video_calculation_type,video_init_info.video_url,video_init_info.video_descrption as video_description,alarm_id,alarm_base_info.alarm_type,alarm_base_info.alarm_address,alarm_base_info.duty_ranks_id,alarm_base_info.area_id,ranks_info.RANKS_NAME,ranks_info.ANCESTORS,alarm_type.DICT_LABEL,alarm_type.DICT_CODE,alarm_base_info.alarm_base_info_name AS alarmName,alarm_base_info.create_time AS alarmTimeFROM( SELECT * FROM video_init_push WHERE del_flag = 0 ) AS push_tableLEFT JOIN video_init_info ON video_init_info.video_init_info_id = push_table.video_init_idLEFT JOIN camera_info ON camera_info.camera_info_id = video_init_info.camera_idLEFT JOIN alarm_base_info ON alarm_base_info.alarm_base_info_id = camera_info.alarm_idLEFT JOIN alarm_type ON alarm_type.DICT_CODE = alarm_base_info.alarm_typeLEFT JOIN ranks_info ON ranks_info.RANKS_ID = alarm_base_info.duty_ranks_id)union all(SELECTvideo_comp.video_comp_info_id as video_comp_info_id,video_comp.camera_id,video_comp.create_time,video_comp.publish_flag,video_comp.publish_time,video_comp.video_type,null as video_push_id,null as video_is_push,null as video_urgent,video_comp.video_calculation_type,video_comp.video_url,video_comp.video_description,alarm_id,alarm_base_info.alarm_type,alarm_base_info.alarm_address,alarm_base_info.duty_ranks_id,alarm_base_info.area_id,ranks_info.RANKS_NAME,ranks_info.ANCESTORS,alarm_type.DICT_LABEL,alarm_type.DICT_CODE,alarm_base_info.alarm_base_info_name AS alarmName,alarm_base_info.create_time AS alarmTimeFROM( SELECT * FROM `video_comp_info` WHERE del_flag = 0 ) AS video_compLEFT JOIN camera_info ON camera_info.camera_info_id = video_comp.camera_idLEFT JOIN alarm_base_info ON alarm_base_info.alarm_base_info_id = camera_info.alarm_idLEFT JOIN alarm_type ON alarm_type.DICT_CODE = alarm_base_info.alarm_typeLEFT JOIN ranks_info ON ranks_info.RANKS_ID = alarm_base_info.duty_ranks_idLEFT JOIN sys_area ON sys_area.AREA_ID=alarm_base_info.area_id)ORDER BYvideo_push_id DESC,video_urgent DESC,video_calculation_type ASC,video_comp_info_id DESC
