Mam modelu trwałości, jak ten:JPA zapytań na podklasy klasy abstrakcyjnej + stan pola
@Entity
public abstract class Employee {
@Id
protected Integer employeeId;
...
}
@Entity
public class FullTimeEmployee extends Employee {
protected Integer salary;
...
}
@Entity
public class PartTimeEmployee extends Employee {
protected Float hourlyWage;
}
chciałbym zapytać Pracownikom warunkach klasowych Somes dzieci, na przykład: pensja> 1000.
Próbowałem tego, ale nie działa.
SELECT e
FROM Employee e
WHERE e.salary > 1000;
SELECT e
FROM Employee e
WHERE (TYPE(e) = FullTimeEmployee AND e.salary > 1000)
OR TYPE(e) = PartTimeEmployee;
Próbowałem również umieścić metodę abstrakcyjną w Employee i użyć jej w zapytaniu, ale również nie działa.
Czy możesz mi pomóc?
Dzięki,
Wielkie rozwiązania. Drugi jest szczególnie przydatny w moim przypadku, w którym miałem już dwa oddzielne zapytania, ale musiałem je połączyć w jeden. –