Witam

Mam dwie tabele

Tabela A id_a (PK)
Tabela B id_b (PK) , id_a (FK)

A (1 : N) B

class A
{
   @OneToMany(mappedBy = "A")
    private List<B> bs;

}

class B
{
   @ManyToOne(optional=false)
   @JoinColumn(name = "id_a", referencedColumnName = "id_a")
    private A a;

}

Przykładowe dane w tabeli B.

id_b --------- id_a-------- name(TEXT typ)

1 --------- 1 ----------- ananas
2 --------- 1 ----------- ananas
3 --------- 1 ----------- pomidor
4 --------- 2 ----------- jablko
5 --------- 3 ----------- ogórek

Teraz tworzę zapytanie ,które ma mi zwrócić objekt A ,
który będzie zawierać listę objektów B gdzie pole name = 'ananas'

W tradycyjnym SQL mogę to zrobić tak :

SELECT a.id,b.id,b.nazwa FROM A a
JOIN B b ON b.id_a = a.id_a
WHERE b.nazwa = 'ananas'

i jest ok jednak nie zmapowane na objekty

Teraz chcę to samo uzyskać stosując objekt javax.persistence.Query

SELECT a FROM A a JOIN a.bs b WHERE b.nazwa = 'ananas'

niestety pobierany jest także pomidor
więc jak prawidłowo powinna wyglądać te zapytanie