Hibernate SQL смешивает два значения столбца из разных таблиц - PullRequest
0 голосов
/ 25 апреля 2018

Я выполняю этот запрос

        Query q = session.getCurrentSession()
            .createSQLQuery("SELECT alt.*, cpp.*, l.*, u.*, br.*,np.*, afp.*, lmp.*  FROM ActiveLoansTable alt " +
                    "JOIN loan l ON l.loanId=alt.loanId " +
                    "JOIN custpaymentplan cpp ON cpp.loanId=alt.loanId " +
                    "JOIN branches br ON br.branchId=l.branch_id " +
                    "JOIN users u ON u.userId=l.userId " +
                    "JOIN naturalPerson np ON np.personId=l.customerId " +
                    "LEFT JOIN additionalfinancialparameters afp on afp.loanId = l.loanId " +
                    "LEFT JOIN loanmanagementprice lmp on lmp.loanId = l.loanId " +
                    "WHERE l.status = :statusActive and (alt.isLateInSchedule=1 or alt.isLateOutSchedule=1) ")
            .addEntity("alt", ActiveLoanTable.class)
            .addEntity("cpp", CustPaymentPlan.class)
            .addEntity("l", Loan.class)
            .addEntity("u", User.class)
            .addEntity("br", Branch.class)
            .addEntity("np", NaturalPerson.class)
            .addEntity("afp", AdditionalFinancialParameters.class)
            .addEntity("lmp", LoanManagementPrice.class);

, затем я приведу результаты к объектам:

        for (Object[] row : rows) {

        ActiveLoanTable alt = (ActiveLoanTable) row[0];
        CustPaymentPlan cpp = (CustPaymentPlan) row[1];
        Loan l = (Loan) row[2];
        User u = (User) row[3];
        Branch br = (Branch) row[4];
        NaturalPerson np = (NaturalPerson) row[5];
        AdditionalFinancialParameters afp = (AdditionalFinancialParameters) row[6];
        LoanManagementPrice lmp = (LoanManagementPrice) row[7];}

, где naturalPerson, и у обоих пользователей есть столбцы firstname и lastname.Я хочу вернуть их оба, но в конечном итоге naturalperson значения переопределяются пользовательскими значениями.поэтому np.firstname становится u.firstname

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...