If you are running WooCommerce on WordPress for your shop and Sort is not working then check these things for troubleshooting. In many cases sorting by price (low to high and high to low are not working).
Lets start with the UI solution. First thing you can do is regenerate the Product lookup tables. You can find the option in WordPress admin
WooCommerce > Status > Tools > Product lookup tables
Once you are there hit, regenerate button and wait for the process to complete. This usually takes couple of minutes to complete but obviously depends on the number of products in the system. Once you have waited, check if the sorting is working fine.
Might be a code issue?
If above solution didn’t work, then it might be due to template issue. Most theme override the WooCommerce template and if the theme template version is older (mismatched), you might get these kind of issues. To check this you can go to
WooCommerce > Status > System Status
Scroll down to the Templates section and see if there is some issue with templates. If there are issues, you will have to replace these templates. If you want to try to fix this, there is instruction available here
Or try out this plugin Regenerate product lookup table for WooCommerce which adds cron to regenerate lookup table to fix sorting issue.