You will first need to make sure that you are tracking history on the defect status field. Go to Tools - Customization - Project Entities, expand Defect, then expand System Fields. Click on the Status field and ensure that there is a check in the ''History'' item on the right.
Once history is being tracked for the field, the changes are tracked in the AUDIT_LOG and AUDIT_PROPERTIES tables.
/* SQL to query the history records for the Defect Status field. */
SELECT au.AU_ENTITY_ID As 'Defect ID',
ap.AP_PROPERTY_NAME As 'Field',
au.AU_ACTION As 'Action Type',
ap.AP_OLD_VALUE As 'Old Value',
ap.AP_NEW_VALUE As 'New Value',
au.AU_USER As 'User',
au.AU_TIME As 'Date/Time'
FROM AUDIT_LOG au, AUDIT_PROPERTIES ap
WHERE au.AU_ENTITY_TYPE = 'BUG' AND
ap.AP_FIELD_NAME = 'BG_STATUS' AND
ap.AP_ACTION_ID = au.AU_ACTION_ID