That's because the symbol table will be updated as soon as the first record with a new PRCS_DTE value is loaded in (i.e. it is updated during the LOAD, not at the end of the statement).
Hence WHERE NOT EXISTS returns false for any following record with the same value.
PRCS_DTE as PRCS_TODAY
WHERE NOT EXISTS (PRCS_TODAY, PRCS_DTE);
DROP FIELD PRCS_TODAY;