TABLE LOOKUP 
=================================

TABLE LOOKUP 算子用于表示全局索引的回表逻辑。

示例：全局索引回表

```javascript
obclient>CREATE TABLE t1(c1 INT PRIMARY KEY, c2 INT, c3 INT) PARTITION BY 
       HASH(c1) PARTITIONS 4;
Query OK, 0 rows affected (0.12 sec)

obclient>CREATE INDEX i1 ON t1(c2) GLOBAL;
Query OK, 0 rows affected (0.12 sec)

obclient>EXPLAIN SELECT * FROM t1 WHERE c2 = 1\G;
*************************** 1. row ***************************
Query Plan:
| ========================================
|ID|OPERATOR    |NAME  |EST. ROWS|COST |
----------------------------------------
|0 |TABLE LOOKUP|t1    |3960     |31065|
|1 | TABLE SCAN |t1(i1)|3960     |956  |
========================================

Outputs & filters:
-------------------------------------
  0 - output([t1.c1], [t1.c2], [t1.c3]), filter(nil),
      partitions(p[0-3])
  1 - output([t1.c1]), filter(nil),
      access([t1.c1]), partitions(p0)
```



上述示例中，1 号算子是扫描全局索引 i1, 0 号算子表明从主表中获取不在全局索引的列。执行计划展示中的 outputs \& filters 详细展示了 TABLE LOOKUP 算子的输出信息如下：


|  **信息名称**  |                               **含义**                                |
|------------|---------------------------------------------------------------------|
| output     | 该算子的输出列。                                                            |
| filter     | 该算子的过滤谓词。 由于示例中 TABLE LOOKUP 算子没有设置 filter，所以为 nil。 |
| partitions | 查询需要扫描的分区。                                                          |


