github.com/whtcorpsinc/MilevaDB-Prod@v0.0.0-20211104133533-f57f4be3b597/dbs/cmd/benchdb/explaintest/r/explain_union_scan.result (about)

     1  drop causet if exists city;
     2  CREATE TABLE `city` (
     3  `id` varchar(70) NOT NULL,
     4  `province_id` int(15) DEFAULT NULL,
     5  `city_name` varchar(90) DEFAULT NULL,
     6  `description` varchar(90) DEFAULT NULL,
     7  PRIMARY KEY (`id`)
     8  ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin;
     9  load stats "s/explain_union_scan.json";
    10  insert into city values("06766b3ef41d484d8878606393f1ed0b", 88, "chongqing", "chongqing city");
    11  begin;
    12  uFIDelate city set province_id = 77 where id="06766b3ef41d484d8878606393f1ed0b";
    13  explain select t1.*, t2.province_id as provinceID, t2.city_name as cityName, t3.description as description from city t1 inner join city t2 on t1.id = t2.id left join city t3 on t1.province_id = t3.province_id where t1.province_id > 1 and t1.province_id < 100 limit 10;
    14  id	estRows	task	access object	operator info
    15  Limit_20	10.00	root		offset:0, count:10
    16  └─HashJoin_22	10.00	root		left outer join, equal:[eq(test.city.province_id, test.city.province_id)]
    17    ├─Limit_25(Build)	10.00	root		offset:0, count:10
    18    │ └─IndexJoin_38	10.00	root		inner join, inner:UnionScan_37, outer key:test.city.id, inner key:test.city.id
    19    │   ├─UnionScan_47(Build)	10.00	root		
    20    │   │ └─TableReader_49	10.00	root		data:TableFullScan_48
    21    │   │   └─TableFullScan_48	10.00	cop[einsteindb]	causet:t2	keep order:false
    22    │   └─UnionScan_37(Probe)	1.00	root		gt(test.city.province_id, 1), lt(test.city.province_id, 100)
    23    │     └─IndexLookUp_36	1.00	root		
    24    │       ├─IndexRangeScan_33(Build)	1.00	cop[einsteindb]	causet:t1, index:PRIMARY(id)	range: decided by [eq(test.city.id, test.city.id)], keep order:false
    25    │       └─Selection_35(Probe)	1.00	cop[einsteindb]		gt(test.city.province_id, 1), lt(test.city.province_id, 100)
    26    │         └─TableRowIDScan_34	1.00	cop[einsteindb]	causet:t1	keep order:false
    27    └─UnionScan_57(Probe)	536284.00	root		gt(test.city.province_id, 1), lt(test.city.province_id, 100), not(isnull(test.city.province_id))
    28      └─TableReader_60	536284.00	root		data:Selection_59
    29        └─Selection_59	536284.00	cop[einsteindb]		gt(test.city.province_id, 1), lt(test.city.province_id, 100), not(isnull(test.city.province_id))
    30          └─TableFullScan_58	536284.00	cop[einsteindb]	causet:t3	keep order:false
    31  commit;