The `READ TABLE ... WITH KEY ...`

statement performs a linear search of `STANDARD`

tables, which is very inefficient in most
cases.

This rule raises an issue when a `READ TABLE ... WITH KEY ...`

statement does not finish with `BINARY SEARCH`

. No issue will
be raised for `HASHED`

and `SORTED`

tables.

## Noncompliant Code Example

TYPES BEGIN OF t_mytable,
myfield TYPE i
END OF t_mytable.
DATA myworkarea TYPE t_mytable.
DATA mytable TYPE STANDARD TABLE OF t_mytable.
SORT mytable BY myfield.
READ TABLE mytable
WITH KEY myfield = 42
INTO myworkarea. " Noncompliant

## Compliant Solution

TYPES BEGIN OF t_mytable,
myfield TYPE i
END OF t_mytable.
DATA myworkarea TYPE t_mytable.
DATA mytable TYPE STANDARD TABLE OF t_mytable.
SORT mytable BY myfield.
READ TABLE mytable
WITH KEY myfield = 42
INTO myworkarea
BINARY SEARCH. " Compliant
DATA my_hashed_table TYPE HASHED TABLE OF t_mytable
WITH UNIQUE KEY myfield.
DATA my_sorted_table TYPE SORTED TABLE OF t_mytable
WITH UNIQUE KEY myfield.
READ TABLE my_hashed_table
WITH KEY myfield = 42
INTO myworkarea. " Compliant
READ TABLE my_sorted_table
WITH KEY myfield = 42
INTO myworkarea. " Compliant