2013-03-06 52 views
0

可以在createCriteria裏面做數學問題嗎?我可以在createCriteria中做數學運算嗎

例如:

如果在我的表我有兩列,如果兩個一起做100,我不希望顯示在我的查詢結果

如果另一列在其他表中?

column 1 column 2 

    50  50 
    20  20 

我想第二排

table 1  table 2 

    50   50 
    20   20 

回答

3

一種選擇是在你的領域類來定義公式字段。喜歡的東西:

class SumFormula { 
    Integer column1 
    Integer column2 
    Integer sum 

    static mapping = { 
     sum formula: 'column1 + column2' 
    } 
} 

然後,您可以申請條件如下:

SumFormula.createCriteria().list() { 
    ne("sum", 100) 
} 
+0

感謝,這可能會奏效,但使用外部表? – user1698253 2013-03-06 18:28:07

+0

派生('公式)屬性是SQL表達式,因此遍歷表/類之間的關聯並不容易。你可能會對SQL感興趣,但以一種有限/不靈活的方式。 – 2013-03-06 19:18:30