原因是这样子的:
现在有两个字段,年份(year),和学期(term)
beego的orm现在支持单独一个字段的过滤,例如2013年~2015年:
```
tmp := map[string]interface{}
o := orm.NewOrm()
qs := o.QueryTable("table").Filter("year__gte", 2013).Filter("year__lte", 2015).All(&tmp)
```
如上可以得到年份的区间。
可是我的需求是多个字段过滤,例如2013年2学期~2015年1学期
用sql语句可以表示为:
```
var sql string = "select * from table where year >= 2013 and year <= 2015 and not (year = 2013 and term = 1) and not (year = 2015 and term = 2);"
```
但是beego所提供的Exclude(expre, ...) 和*orm.Condition 都没有看到符合要求的办法,又不想直接用sql语句。求大神解答。
有疑问加站长微信联系(非本文作者)