1
我正在處理一些學術任務,並且我被卡住了。情況如下:
我有三個簡單的數據庫表和Java @Entity類從它們生成。針對給定任務的JPA查詢
表商標:
student_id數據(PK)
SUBJECT_ID(PK)
MARK
public class Mark implements Serializable {
private BigDecimal mark;
@Id
@Column(name = "STUDENT_ID", nullable = false, insertable = false, updatable = false)
private BigDecimal studentId;
@Id
@Column(name = "SUBJECT_ID", nullable = false, insertable = false, updatable = false)
private BigDecimal subjectId;
@ManyToOne
@JoinColumn(name = "SUBJECT_ID")
private Subject subject;
@ManyToOne
@JoinColumn(name = "STUDENT_ID")
private Student student;
(...)
}
表學生:
INDEX_NO(PK)
FNAME
LNAME
FACULTY_ID
public class Student implements Serializable {
@Column(name = "FACULTY_ID", nullable = false)
private BigDecimal facultyId;
@Column(nullable = false, length = 20)
private String fname;
@Id
@Column(name = "INDEX_NO", nullable = false)
private BigDecimal indexNo;
@Column(nullable = false, length = 20)
private String lname;
@OneToMany(mappedBy = "student")
private List<Mark> marksList1;
(...)
}
表學生:
ID(PK)
名稱
public class Subject implements Serializable {
@Id
@Column(nullable = false)
private BigDecimal id;
@Column(nullable = false, length = 60)
private String name;
@OneToMany(mappedBy = "subject")
private List<Mark> marksList;
(...)
}
的任務是獲得兩個列表:
1.它沒有標記所有的學生名單科目呢。
2.特定學生沒有標記的科目列表。
我不太擅長SQL,所以我在查詢構造方面存在問題。它可以通過任何類似JPA的方式解決,即JPQL,Criteria API。
所以我要求你幫忙。
感謝您的關注。