Ajuda com a consulta CoreData

Estou procurando maneiras de escrever algumas consultas básicas no CoreData e não há exemplos na documentação. A seguir está minha consulta:

Eu tenho um objeto de despesa e ele tem um campo expensAmount.A despesa pode ser vinculada a um objeto ExpenseCategory.O ExpenseCategory pode apenas definir a categoria da despesa (por exemplo, Comida) ou pode ter uma taxa unitária (por exemplo, Quilometragem). Se for apenas o nome, o valor da despesa será o objeto expensAmount no Expense; caso contrário, será gastoAmount * unitRate na ExpenseCategory.Como o link Despesa para categoria é opcional, a despesa final seria baseada na presença / ausência de Categoria e na taxa unitária.

Portanto, uma consulta SQL para calcular o total de despesas seria:

select
    TOTAL(e.amount * IFNULL(c.rate, 1))
from EXPENSE e
LEFT OUTER join CATEGORY c on
    e.category = c.id

Como isso pode ser feito no CoreData?

questionAnswers(1)

yourAnswerToTheQuestion