我是Grails标准建设者的新手,有人可以解释以下是什么意思吗?
def c = Account.createCriteria()
def results = c {
like("holderFirstName", "Fred%")
and {
between("balance", 500, 1000)
eq("branch", "London")
}
maxResults(10)
order("holderLastName", "desc")
}
Run Code Online (Sandbox Code Playgroud)
这是不是意味着
Select * from account where
holderFirstName like 'fred%' and
(balance between 500 and 1000 **and**
branch='london")Select * from account where
holderFirstName like 'fred%' and
(balance between 500 and 1000 **or**
branch='london")如果我想一起使用"或"和"和",我该怎么做?
您的示例将执行为:
select * from account
where holderFirstName like 'Fred%'
and balance between 500 and 1000
and branch = 'London'
Run Code Online (Sandbox Code Playgroud)
所有顶级条件都隐含在一起进行"与"运算.您可以创建相同的Criteria:
def c = Account.createCriteria()
def results = c {
like("holderFirstName", "Fred%")
between("balance", 500, 1000)
eq("branch", "London")
maxResults(10)
order("holderLastName", "desc")
}
Run Code Online (Sandbox Code Playgroud)
要获得第二个查询,请使用此条件:
def c = Account.createCriteria()
def results = c {
like("holderFirstName", "Fred%")
or {
between("balance", 500, 1000)
eq("branch", London")
}
maxResults(10)
order("holderLastName", "desc")
}
Run Code Online (Sandbox Code Playgroud)
嵌套您的and/ or关闭以获得更复杂的标准.
| 归档时间: |
|
| 查看次数: |
6258 次 |
| 最近记录: |