1
我有以下HQL语句:HQL和继承
Query q = session.createQuery(
"SELECT ze " +
"FROM NormaleZone zo " +
"LEFT JOIN zo.zaal za " +
"LEFT JOIN za.vertoningen v " +
"LEFT JOIN zo.normaleZetels ze " +
"WHERE v = :vertoning " +
" AND zo = :zone " +
" AND ze NOT IN (SELECT t.zetel FROM Ticket t WHERE t.vertoning = :vertoning)"
);
我的问题是,从Zone
NormaleZone
继承,因为这样做HandicapZone
和LoveZone
。
我想这样做的是以下几点:
Query q = session.createQuery(
"SELECT ze " +
"FROM Zone zo " +
"LEFT JOIN zo.zaal za " +
"LEFT JOIN za.vertoningen v " +
"LEFT JOIN zo.??? ze " +
"WHERE v = :vertoning " +
" AND zo = :zone " +
" AND ze NOT IN (SELECT t.zetel FROM Ticket t WHERE t.vertoning = :vertoning)"
);
你可以看到我把zo.???
在那里。这个HQL的目标是找出哪些座位尚未在电影院拍摄。问题在于抽象类Zone
没有座位(ze
将成为座位的别名)。
我不明白我怎么能解决这个问题,除了看着那个方法传入Zone
对象,然后做两个字符串,一个区域,一个用于席位,然后在HQL字符串拼接它们。