Jak zbudować zapytanie, wybierając według wartości pola obiektu obcego

Jaki jest najlepszy sposób na zapytanie przy użyciu wartości pola obiektu obcego?

Załóżmy, że mam te trzy klasy.

Klasa UnitResult, która opisuje ilość jednostek:

@DatabaseTable
public class UnitResult {
    public static final String ID_FIELD_NAME = "id";
    public static final String UNIT_COLUMN_NAME = "unit";
    public static final String RESULT_COLUMN_NAME = "result";

    @DatabaseField(generatedId = true, columnName = ID_FIELD_NAME)
    public Integer id;

    @DatabaseField(foreign = true, canBeNull = false, columnName = UNIT_COLUMN_NAME)
    public Unit unit;

    @DatabaseField(canBeNull = true, columnName = RESULT_COLUMN_NAME)
    public Integer result = null;
}

Klasa jednostek, która opisuje niektóre jednostki na rynku (na przykład jiuce, przekąska itp.):

@DatabaseTable
public class Unit {
    public static final String ID_FIELD_NAME = "id";
    public static final String TYPE_FIELD_NAME = "type";

    @DatabaseField(id = true, columnName = ID_FIELD_NAME)
    public int id;

    @DatabaseField(canBeNull = false, columnName = TYPE_FIELD_NAME)
    public UnitType type;
}

I typ jednostki Enum:

public enum UnitType {
    JUICES,
    DRINKS,
    SNACKS,
    NPD;
}

Więc jak mogę zapytać wszystkichUnitResult gdzieUnit typ jestUnitType.JUICES?

questionAnswers(1)

yourAnswerToTheQuestion