Ich habe Probleme mit Join-Tabellen in Java Spring Hibernate. Hier ist mein Problem:Join mehrere Tabelle in Java Spring Hibernate
Ich entwickle eine Website und in einer meiner Seite brauche ich die Daten aus drei Tabellen, sie sind x, y, z. Ich habe jeden von ihnen in Entity abgebildet und hat ein eigenes Repository. Auf dieser Seite zeige ich die Daten, die diese Abfrage mit:
SELECT x.a, y.b, z.c FROM x,y,z WHERE x.id = y.name AND z.id = y.personalId AND
(x.id like %'searchedId'% or y.id like %'searchedId'% or z.id like %'searchedId'%) AND
(x.name like %'searchedName'% or y.name like %'searchedName'% or z.name like %'searchedName'%)
Das Problem ist, ist die searchedId und searchedName eine optionale Spalte und sie konnten leere Zeichenfolge sein, und wenn sie leer sind Strings muss ich nicht setzen sie in meine Abfrage, um es zu beschleunigen. Ich habe versucht, Kriterien-Builder zu verwenden, aber da das Ergebnis aus mehreren Tabellen zusammengefügt ist, kann ich sie nicht in ein Repository einfügen.
Sorry, aber ich kann Ihre dynamisch Abfrage bauen nicht sehen. Vielleicht hast du vergessen, sie zu setzen. –
Ich habe es jetzt hinzugefügt. Sie können eine nativeSQL-Abfrage erstellen, und nur wenn searchId und searchName nicht null sind, werden sie der Hauptabfrage hinzugefügt. – shankarsh15
Und wie soll ich es ausführen? Ich meine, sollte ich ein Repository einlegen? Und was wäre der Rückgabewert? Entschuldigung, ich bin neu in diesem Bereich. –