[Stackoverflow] [Progress OpenEdge ABL] What if i don't use index fields in my program?

Status
Not open for further replies.
T

Thiru

Guest
I am a beginner to this progress 4GL. I have confused with the following logic especially how the index actually working.

I have added 2 fields in one index. As you can see below I have written three queries.

Query 1, Used the index and finding data from 2 fields to retrieve the data

Query 2, Used the same index but finding data from 1 field only

Query 3, Used the same index field with one non-index field

Code:
define temp-table tt_creldata no-undo
field tt_cscx_order    as character 
field tt_cscx_part     as character
field tt_cscx_shipfrom as character
index tt_cscx
      tt_cscx_order
      tt_cscx_part
.
**Query 1:**
find first tt_creldata use-index tt_cscx 
      where tt_cscx_order = "153" 
      and tt_cscx_part = "113" no-lock no-error.

**Query 2:**
find first tt_creldata use-index tt_cscx 
       where tt_cscx_order = "153" no-lock no-error.

**Query 3:**
find first tt_creldata use-index tt_cscx
      where tt_cscx_order = "153" 
      and tt_cscx_part = "113" 
      and tt_cscx_shipfrom = "US" no-lock no-error.

Question 1: Which query helps to improve the performance

Question 2: What if I don't use one field which is indexed when I mentioned use-index

Question 3: What if I add one non-index field when I mentioned use-index?

Continue reading...
 
Status
Not open for further replies.
Top