I would go for a Map<Qualification,Set<MyType>>, combined with a method that returns a Set<MyType> given a Set<MyType> and Qualification. (This method can be private, or an instance method on Qualification, or whatever you choose.)
You can store the entire set with a null key, or of course as a separate field. For all qualifications, you can retrieve them from the map as follows:
This is a lazy initialization implementation; if you never need a sub set for a qualification, you simply never initialize it. If you do, you only initialize it once and cache it afterwards.
Note that I made an abstraction of your qualification; perhaps in your code it will be a simple
String, or an int / long (in which case you use Integer / Long as key type). The important thing is, that this code should work regardless of your representation choice.