I have managed to devise a workaround for my scenario, you may be able to implement depending on what you need. (this is for new items created but it could be modified to allow for modified items aswell)
1: Create a list (a) within sharepoint and add a column, type number to store a temporary ID
2: create a row in this list and put the ID -1 of the SQL table in where you want to start processing from, lets say for instance we set as 0 it will start at ID 1
2: Create a list (b) within sharepoint and add 2 columns, 1 as date only, 1 as yes/no (default as No)
3: Create a flow on a daily recurrence at your business start time and set it to create a row in your list (b) with the current date
4: Create a flow on a daily recurrence at your business close time and set it to update the row in your list (b) that is filtered by the current date and set the Yes/No column to Yes
5a: Create a flow, triggered on new item created in list (b), add a do until loop and set it to terminate when Yes/No column equals true
5b: In your do until loop: Add get row from list (a) rowID=1 (as there is only 1 row in this table use the ID for that row which should be 1 unless you made a mistake and deleted a row etc), this will get the current ID which we set as 0
5c:Add a get rows from your sql table filtered on the field containing our current ID (Dynamic content from get row of list (a)), set this to top count 1 ie in the filter query put: ID gt DynamicfiledName
5d: Add a compose action and in expression add length(body('Get_rows')?['value']) (ensuring you change Get_rows to the name of your get rows action)
5e: Add a condition to check whether there are any more IDs - use the output from 5d and set is equal to 0
5f: Under if Yes add a delay and set to say 10 minutes
5g: Under if No Add a compose action so that we dont end up with an array and under expression paste:
first(body('Get_rows')?['Value'])?['ID'] (ensure you change the Get_rows part to the name of you get rows action above)
5h: add a get row action from SQL and set the ID to the output from 5g
5i: Now do whatever you want with the row you just got, ie: send an email, update some fields etc
5j: Add an action - Sharepoint update item, set the list as list (a) and update the temporary ID field to the ID of the compose output in 5g
Finished
What this does:
When your business opens it triggers the flow
It then loops through the SQL table and performs your action, updating the sharepoint list with the latest ID each time it processes an item to ensure an item isnt processed twice
The Length function checks each time that there are more rows to process
If there are no more rows to process it delays the flow for 10 minutes and then starts the loop again.
When you business closes it stops the flow.
Obviously you need to change the times of the open and close flows so that it porcesses only when data is going to be changed in SQL, for us thats start at 0700 and finish at 1800.
By doing it this way with the loop you only use 3 flow runs per day, 1 to start, 1 to finish and 1 to run the action. If you just put the action flow on a recurrence of say every 10 minutes then you would use a fair amount of runs per day.
You will have to play about if you need it for when an item is modified in SQL, it should be possible with a few extra fields in the sharepoint list but i dont require this function at present, just for new items so that i can send an email.
Hope this helps