This is a pretty basic thing covered in the documentation here.
In your case you would have a category
property on your Work
object that would be an object pointer to a Category
class (table).
// assuming you have myWork and myCategory as instances of ParseObject
myWork.put('category', myCategory);
If you only have the objectId of the Category
then you do the following:
myWork.put('category', ParseObject.createWithoutData('Category', categoryId));