Anytime someone edits the item and it meets that criteria the workflow will run. You may need to add another field that is changed as the first action, so when the workflow is triggered so it will not retrigger.
You may need to add another field to the criteria, such as a checkbox being No. Then when the workflow triggers you change that checkbox to Yes as the first action, this will would stop additional changes from the users retriggering the workflow.
I thought the Conditional Startup with Compare to field (https://community.nintex.com/t5/Nintex-for-SharePoint/Email-notification-value-change/td-p/69610) made it unnecessary to add an additional field such as what you describe.
The workflow runs ok when it is supposed to - meaning, only when the ApprovalStatus clumn is changed. But multiple (5) emails are sent instead of just one email. Here is how I have workflow set up:
Workflow Settings: Run on Modified, Condition = ApprovalStatus (previous) is not equal to ApprovalStatus. Compare to filed is checked.
Switch action. Values are Approved and Rejected.
Approved: Parallel action > Send Notification to Support. Send Notification to Requester.
Rejected: Parallel action > Send Notification to Support. Send Notification to Requester.
That's it. I am only sending emails.
I ran one test, setting ApprovalStatus column to Approved. I can see in Workflow history details that the proper Switch (Approved) ran. I can see it ran 5 times during the same minute. Support got 5 emails all the same. Requester got 5 emails all the same.
Do need an End Workflow action? Do I need a Commit Pending Changes at the end (before the red stop)? I am not updating any fields in the workflow itself, the ApprovalStatus field gets updated in item itself by the Approver.