У меня есть две таблицы, Projects
и TransitionAction
. И Projects
, и TransitionAction
имеют столбец request_no
, который используется для выполнения соединения между ними. Классы сущностей указаны ниже: -
Project.java
@Entity
public class Project implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@SequenceGenerator(schema = "public", name="project_id_seq_gen",sequenceName="project_id_seq",initialValue=1,allocationSize=1)
@GeneratedValue(strategy= GenerationType.SEQUENCE,generator="project_id_seq_gen")
private Integer id;
@Column(name = "request_no")
private String request_no;
@Column(name = "title")
private String title;
@Column(name = "department")
private String department;
@OneToMany(cascade = CascadeType.ALL, mappedBy = "requestNo")
private Set<TransitionAction> tacts;
@ManyToOne
@JoinColumn(name = "status_id")
private Status status;
@ManyToOne
@JoinColumn(name = "level_id")
private ProjectLevel level;
TransitionAction.java
@Entity
@Table(name = "transitionaction")
public class TransitionAction implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name = "request_no")
private String request_no;
@Column(name = "actionDate")
private Date actionDate;
Код, используемый для получения списка проектов следующим образом: -
public interface UserInfoRepository extends JpaRepository<UserInfo, Long> {
UserInfo findByUserName(String userName);
@Query("SELECT project FROM Project project Join project.tacts pta where project.request_no= pta.request_no and project.status.id=1")
List<Project> getAllUserProjects();
}
Я получаю сообщение об ошибке ResultSet. Когда я проверил консоль, я обнаружил, что генерируется следующий запрос:
select
distinct project0_.id as id1_1_,
project0_.department as departme2_1_,
project0_.level_id as level_id6_1_,
project0_.user_nodal_officer as user_nod3_1_,
project0_.request_no as request_4_1_,
project0_.status_id as status_i7_1_,
project0_.title as title5_1_
from
project project0_
inner join
transitionaction tacts1_
on project0_.id=tacts1_.request_no
Я не понимаю, почему проект. Идентификатор соединяется с tact.request_no и создает ошибку
Оператор не существует: целое число = символ меняется