1
我想獲得重複的條目。我想使用查詢作爲條件,爲此我使用下面的代碼。休眠標準找到重複
SELECT * from A
WHERE field in (
SELECT field from A
GROUP BY field HAVING COUNT(field) > 1
);
Hibernate映射就像
@Entity
class A{
...
private String field;
...
}
如何,我收到了那些在「字段」列重複的名單?
我想建立在Java代碼中,不完全是標準的HQL –
我會跟進這個問題:「爲什麼它必須是一個條件查詢?」 (如果答案是「因爲這是我的項目的其他方法所使用的」,請不要打擾,這不是一個好理由)。無論如何,如果你想遵守標準,請記住,你將被迫寫出比HQL版本更長,更難以閱讀和更慢的查詢。原因是hibernate標準不支持having子句。雖然有[已知的解決方法](http://fokot.blogspot.com.br/2011/06/having-clause-in-hibernate-criteria-no.html),我會明確地做到這一點與HQL。 –
另外,看看休眠[補丁HHH-1043 - 添加了對標準的支持](https://hibernate.atlassian.net/browse/HHH-1043)自2005年10月開放。 –