np.sort(students, order=['class', 'height']) np.array(students_details, dtype=data_type) 'name', 'S15' 'class', int 'height', float 'James', 5, 48.5 'Nail', 6, 52.5 'Paul', 5, 42.10 'Pit', 5, 40.11 data_type students_details Original array b'James', 5, 48.5 b'Nail', 6, 52.5 b'Paul', 5, 42.1 b'Pit', 5, 40.11 Sort by class, then height if class are equal b'Pit', 5, 40.11 b'Paul', 5, 42.1 b'James', 5, 48.5 b'Nail', 6, 52.5 Class are equal, so sort by height