Sometimes, it is necessary to find a set of records for which you want to specify a criterion. For example, in our "vehicles" example, you might want to find the records of "TOYOTA" brand vehicles. If the criterion is related to one of the keys, you will not have to go through the whole file, testing the fields against a certan value. Instead, you can use the START statement to find the first vehicle with "TOYOTA" recorded as the brand. An example is START VEHICLES KEY BRAND IS EQUAL TO "TOYOTA" INVALID KEY NO-SUCH-BRAND. LOOP1. READ VEHICLES NEXT AT END PERFORM END-OF-BRAND. ... GO LOOP1. ... IMPORTANT : Please note that when you use the START statement, the file is accessed as a RANDOM file; whereas the subsequent READ NEXT statements acces the file in SEQUENTIAL mode. This dilemna is solved by the ACCESS MODE IS DYNAMIC phrase in the SELECT statement. When you declare the access mode to be DYNAMIC, you can access the file both sequentially ( the NEXT option of the READ statement) and randomly by specifying a certain key value. When you want to use the START statement you must open an index file either as INPUT or I-O. The START statement is not allowed and in fact not meaningful when the file is opened for OUTPUT.