| Well the joins are generated because you use the expression pb.potDates and ba.potDates in the ON clause of your joins. In 5.2 I changed something that actually allows to make use of properties of that relation in the ON clause, but the join is still there. I can look into this, but this is simply how hibernate works. If you want to avoid the join, use an expression like pb.potDates.id = pb.id or in your case it should be something like pb.potDates.pot.potId = pd.pot.potId AND pb.potDates.pot.room.roomId = pd.pot.room.roomId AND pb.potDates.pot.room.smelter.smelterId = pd.pot.room.smelter.smelterId AND pb.potDates.date = pd.date |