Jak zrobić wyraźne liczenie z Data Spring Data JPA? Nie chcę używać adnotacji @Query. Odpowiednikowe zapytanie SQL byłoby:

SELECT COUNT(DISTINCT rack) FROM store WHERE id = 10001;

Próbowałem pisać następujące zapytanie, ale nie działa:

int countDistinctRackById();
6
Benimo 4 czerwiec 2018, 14:00

3 odpowiedzi

Najlepsza odpowiedź

To powinno działać:

Integer countDistinctRackById(Long id);
4
Ilias Mentz 10 październik 2018, 15:51

Spróbuj tego zgodnie z Dokumentacja Spring:

Integer countDistinctRackById(String id);

Wymień słowo Rack z rzeczywistą nazwą pola stojaka

5
Afridi 4 czerwiec 2018, 11:06

Właśnie próbowałem tego i żadna z istniejących odpowiedzi działała.

Następujące zapytanie:

Integer countDistinctRackById(String id);

Czyni coś takiego:

select distinct count(table0_.rack) as col_0_0_ from table table0_ where table0_.id=?

Ponieważ obecnie utknąłem z wiosennym bootem 1.2.3, idk, jeśli pojawiły się jakieś zmiany później, ale aby osiągnąć liczbę odrębną, musiałem zdefiniować niestandardowe zapytanie:

@Query("Select count(distinct rack) from Table t where t.id = ?1")

0
Andreas Volkmann 9 październik 2018, 05:12