我在createCriteria中查询了一堆行,但是必须进行一些更改,我需要隐藏列中的0和其他列中的字母A的行,但我不会隐藏它们如果他们有0和另一个字母,我怎么能在createCriteria中做到这一点?我唯一的解决方案是使用NAND,但我认为它不存在......
createCriteria.list{
nand{
eq('value',0)
eq('letter','A')
}
}
TABLE
VALUE LETTER
0 A HIDE
0 B NOT HIDE
1 A NOT HIDE
有什么建议吗?
答案 0 :(得分:2)
您可以将and
和ne
用于:
createCriteria.list {
and {
ne 'value', 0
ne 'letter', 'A'
}
}
答案 1 :(得分:0)
尝试“ne”,而不是 - 等于
createCriteria.list{
and{
eq('value',0)
ne('letter','A')
}
}
答案 2 :(得分:0)
使用HQL,您可以:
def result = Object.executeQuery(
"from Object o where o not in " +
"(from Object o2 where o2.value = '0' and o2.letter = 'A')",
)