[Progress Communities] [Progress OpenEdge ABL] Forum Post: can-find: resolved where?

Status
Not open for further replies.
J

jmartin104

Guest
Per documentation: " The CAN-FIND function is more efficient than the FIND statement because it does not actually retrieve the database record. If the selection criteria can be satisfied just by looking at values in an index, then it doesn't look at the field values in the database at all. " Let's say you have a unique index on two fields (fieldA and fieldB) and one field not in any index (fieldC). How does the can-find resolve the non-indexed field? And in a case like this, is it more efficient to find the record and then check tableName.fieldC? I theorize, that the index can be confirmed using the unique fields but the field values for fieldC must be looked at next. If this is the case, is this done on the server? if can-find(first tableName no-lock where tableName.fieldA = someValue and tableName.fieldB = someValue and (tableName.fieldC = someValue or tableName.fieldC = someValue)) then.

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