我正在尝试执行查询以收集特定数据,但在查询的on
部分遇到问题。首先,这是我的班级:
class TimeSlot {
String timeslot_id
String time_chunk_id
String uid
String exam_id
String start_time
String is_special_arrangement
static mapping = {
table 'timeslot'
id name: "timeslot_id", column: "timeslot_id"
version false
}
}
这是我正在努力解决的问题:
TimeSlot.executeQuery("Select t.time_chunk_id, t.uid, t.start_time, t.timeslot_id, t.is_special_arrangement, e.length from TimeSlot t inner join Exams e on t.exam_id = e.exam_id where t.exam_id = ? and t.time_chunk_id = ?", [testArray[i], timeChunkArray[x]])
它在on
部分引发错误,因为它期望一个子句,但我需要数据专门用于两个表的exam.id
比较。是否有另一种方法可以设置查询,或者以不同的方式设置查询,以便它可以像在任何SQL编辑器中一样工作?
答案 0 :(得分:0)
如果您更改域类并添加一对多关系
会更容易class TimeSlot {
static hasMany = [examinations:Exams]
然后HQL可以
select ... from TimeSlot t join t.examinations e