For a Push Fields action you can select from three options, If No Requests Match
and from four options, If Any Requests Match
For a Set Fields action only two options are available, If No Requests Match:
and from four options, If Multiple Requests Match.
Unfortunately the main difference is not the number of options, but the fact that "Take No Action" is not available at all with a Set Fields Action.
To check , whether an entry exists or not, you will always have to use temporary fields and additional filters or active links with appropriate actions.
It would be very helpful to have a "Take No Action" option available for the Set Fields action too.. So if the field is already set to something unequals <null>, the option would preserve the value of the field, if no entry is found.
Workflow can be streamlined and forms (or views) don't have to be modified (overlayed) just to add temporary fields.