Example 1: Using the While Statement to Count Substrings SQL> DECLARE :SUB_STR CHAR; SQL> DECLARE :SRC_STR CHAR(50); SQL> BEGIN cont> SET :SUB_STR='l'; cont> SET :SRC_STR='The rain in Spain falls mainly on the plain'; cont> END; SQL> SET FLAGS 'TRACE'; SQL> BEGIN cont>-- This procedure counts the occurrence of substrings cont> DECLARE :STR_COUNT INTEGER=0; cont> DECLARE :CUR_POS INTEGER = POSITION (:SUB_STR IN :SRC_STR); cont> WHILE :CUR_POS >0 DO cont> SET :STR_COUNT=:STR_COUNT + 1; cont> SET :CUR_POS = POSITION (:SUB_STR IN :SRC_STR FROM :CUR_POS + 1); cont> END WHILE; cont> TRACE 'FOUND ', :STR_COUNT, ' OCCURRENCES OF "', :SUB_STR, '"'; cont> END; ~Xt: Found 4 occurrences of "l"