.equals()
сравнивает данные в классе (при условии, что функция реализована). ==
сравнивает местоположения указателя (расположение объекта в памяти).
==
возвращает true, если оба объекта (NOT TALKING OF PRIMITIVES) указывают на экземпляр SAME. .equals()
возвращает true, если два объекта содержат одни и те же данные equals()
Versus ==
в Java
Это может вам помочь.
Вы забыли добавить группировку к вашему запросу:
GROUP BY Trip_T.tripID, Trip_T.title, User_T.username
Таким образом, счетчики соответствуют каждому триплету из (Trip_T.tripID, Trip_T.title, User_T.username)