NutzCN Logo
精华 Cnd 拼接中 where ( a or b ) and c;怎么拼接啊
发布于 3115天前 作者 wendal 4571 次浏览 复制 上一个帖子 下一个帖子
标签: dao cnd

RT

5 回复

用Cnd.exps
```java
Cnd.where(Cnd.exps("name", "=", "wendal").or("name", "=", "zozoh")).or("age", "<", 25);

```

@wendal 这个Cnd拼我也看了,但是现在有很多if()条件判断拼sql,所以用Cri,Cri怎么拼?

        Cnd cnd = Cnd.NEW();
        if (!Strings.isBlank(src)) {
            cnd.and("srcFrom", "=", src);
        }
        if (!Strings.isBlank(name)) {
            String[] n = StringUtils.split(name, " ");
            SqlExpressionGroup group = new SqlExpressionGroup();
            for (String s : n) {
                SqlExpression sqlExpression = Cnd.exp("srcName", "like", "%" + s + "%");
                group.or(sqlExpression);
            }
            cnd.and(group);
        }
        cnd.and(Cnd.exps("productSku", "=", "").or("productSku", "is", null));

也可以这样

cnd.and(new Static(" a is null or a=''")).and("b","=",1)

@crskyp Static是没有办法的时候才用

添加回复
请先登陆
回到顶部