Я пытаюсь использовать запрос hiberate для большого количества SQL, есть ли способ переписать этот sql, чтобы сделать его чище. Я также получаю переменную никогда не используется для 'Query paymentdate'
public void addPrevious(TodaysDate Date){
String paymentDate = ("SELECT PAYMENTDATE FROM table1 where DATE = (SELECT ID FROM _DATE WHERE ID = ( SELECT MAX(ID) FROM _DATE WHERE ID < ( SELECT MAX(ID) FROM _DATE ) ))");
String reportingUnit = ("SELECT REPORTING_UNIT FROM table1 where DATE = (SELECT ID FROM _DATE WHERE ID = ( SELECT MAX(ID) FROM _DATE WHERE ID < ( SELECT MAX(ID) FROM _DATE ) ))");
String insertLastDate = ("INSERT INTO table1(PAYMENTDATE, REPORTING_UNIT, Date) VALUES ("+id+" ,"+paymentDate+", "+amount+", "+asOfDate+")");
Query paymentdate = getSession().createQuery(paymentDate);
Query report = getSession().createQuery(reportingunit);
}