正确使用AND,OR运算符和grails标准

时间:2013-08-22 13:00:09

标签: grails criteria

我正在尝试使用grails createCriteria建立一个标准。像这样的标准

Controller.createCriteria().listDistinct(){
and {
   or{
          or{
             //condition1
             //condition2
            }
          or{
             //condition3
             //condition4
            }

     }

//condition 5
}

}

但我得到的是:

 where
        (
            (
                (
                    condition 1
                    or condition2
                ) 
                or (
                    condition 3 
                    or condition 4
                )
            )
        ) 

我该如何正确定位条款?

1 个答案:

答案 0 :(得分:6)

您是否尝试过仅使用一个OR来简化操作。 我想的是:

and {
    or{
        //condition1
        //condition2
        //condition3
        //condition4
    }
    //condition 5
}

它将生成不太复杂的SQL