Please see attached.
The key is to use the Lifecycle History table (as Dave Demay said), joined multiple times to the Change Request, different alias for each state, then add criteria as shown in attached (Action=Enter_Phase and state=xxx).
[cid:image002.png@01CC76E3.9F39C980] [cid:image003.png@01CC76E3.9F39C980]
Can do the averaging / other statistics either in Windchill (as shown above) or externally (Excel) with a CSV file output.
Note: Relatively major limitation (bug)!! Only works with multiple states for the root Change Request type; doesn't work with any subtypes, so attributes specific to a sub type cannot be included in the same report, and other subtypes have to be filtered out.