I've never seen this behavior before. I've got a report that was working great for a few years. Now it's not displaying a % field on most of the records, yet every so often it does display correctly (image 1).
And here's the query data, for the exact same records, in the exact same order - showing that the % data exists. WTH? (image 2)