# `IndexLookUp` Data Aggregator and `TableRowIDScan` Operator

+ **`IndexLookUp`** aggregates the `RowID` values, then reads the data from TiKV based on these `RowID` values
+ **`TableRowIDScan`** scans the table data based on the `RowID` values
+ Those **`handle`** for **`TableRowIDScan`** are not displayed in the **`operator info`** column of the explain table
+ **`IndexLookUp`** retrieves the row set from **`IndexRangeScan (Build)`** and **`TableRowIDScan (Probe)`**
+ Use suitable secondary indexes and/or avoid using asterisk (*) in the selection list can potentially improve the plan from **`IndexLookUp`** to **`IndexReader`**

------------------------------------------------------------------------------
The `TableRowIDScan` operator scans the table data based on the `RowID` values. It usually follows an index read operation to retrieve the matching data rows. 

The `IndexLookUp` operator is used when retrieving data from a secondary index in TiDB. It consists of two main steps:
- Uses the `IndexRangeScan` operator to perform a range scan on the specified index and retrieves the internal `RowID` values (which are essentially the primary key values) for rows that match the index condition.
- Then, uses the `TableRowIDScan` operator to retrieve the entire rows from the table data using the `RowID` values.