zoukankan      html  css  js  c++  java
  • 医生orm之count、where的若干问题

    ps:先讲一个笑话

            话说医生orm的生成工具的源码价值10RMB,这是什么概念呢?是在4环附近请医生吃一碗兰州拉面,在6环吃两碗,如果在1环请呢?医生在找我10rmb,所以大家还是在一环请他吃饭吧,买它工具转账什么的太麻烦了,让他带上工具源码+10rmb来一环。。。。。。。。。。。。。。。。。。。。。。1

    上周看看了看简单的基本操作,剩下就是where、group、count、delete 等常用操作

    相关的基本的sql和model见:http://www.cnblogs.com/qqloving/archive/2012/10/28/2743269.html

    医生的 where and or 简直就是琵琶,建议医生做个demo出来走两步,让大家围观一下

    我的文章在注释里面!

    Delete的demo

    医生的dele操作没有逻辑删除字段是在是欠妥,应该加一个逻辑删除和物理删除的

      protected void Page_Load(object sender, EventArgs e)
            {
                SuperMarket.userinfo objuserinfo = new SuperMarket.userinfo();
                EntityQuery<SuperMarket.userinfo> query2 = new EntityQuery<SuperMarket.userinfo>(objuserinfo, true);
                //根据id删除
                objuserinfo.id = 37;
                int flag = query2.Delete(objuserinfo);
                Response.Write(flag);
                //话说根据一个where条件批量删除该怎么弄呢?
            }

    count的demo

            protected void Page_Load(object sender, EventArgs e)
            {
                SuperMarket.userinfo objuserinfo = new SuperMarket.userinfo();
                EntityQuery<SuperMarket.userinfo> query2 = new EntityQuery<SuperMarket.userinfo>
                    (objuserinfo, true);
                OQL Query = new OQL(objuserinfo);
                OQL result = Query.Select().Count(objuserinfo.id, "id").END;
                //ps 由于不知道医生这个orm暂时如何查询偶返回第一行第一列
                //     但医生的orm的对应关系,你懂得,这就是知道原理的好处。。。。。。。。。。。。。。
                // 弱弱的问一下医生,如果写下面的代码????????????????
                SuperMarket.userinfo objuserinfo2 = EntityQuery<SuperMarket.userinfo>.QueryObject(result);
                Response.Write(objuserinfo2.id);
            }

    group 的demo

            protected void Page_Load(object sender, EventArgs e)
            {
                SuperMarket.userinfo objuserinfo = new SuperMarket.userinfo();
                EntityQuery<SuperMarket.userinfo> query2 = new EntityQuery<SuperMarket.userinfo>
                    (objuserinfo, true);
                OQL Query = new OQL(objuserinfo);
                OQL myusery = Query.Select(objuserinfo.username).GroupBy(objuserinfo.username).END;
     
                //话说这个地方,我怎么知道一个 oql 是返回一个list 还是一个model???还是一个 int。。。。。
                //
               List< SuperMarket.userinfo> objuserinfo2 = EntityQuery<SuperMarket.userinfo>.QueryList(myusery);
               foreach (SuperMarket.userinfo item in objuserinfo2)
               {
                   Response.Write(item.username+"</br>");
               }
     
            }
     
     

    where and or 的demo

            protected void Page_Load(object sender, EventArgs e)
            {
                ///////
                // PS 吐槽一下,每一个查询,都要实例化这三个东西,是不是有点多余??。。。。。。。
                SuperMarket.userinfo objuserinfo = new SuperMarket.userinfo();
                EntityQuery<SuperMarket.userinfo> query2 = new EntityQuery<SuperMarket.userinfo>
                    (objuserinfo, true);
                OQL Query = new OQL(objuserinfo);
                ///////////
                objuserinfo.username = "互联网fans";
                OQL Query1 = Query.Select().Where(objuserinfo.username, "=" ).END;
               List< SuperMarket.userinfo> test1 = EntityQuery<SuperMarket.userinfo>.QueryList(Query1);
                //我去,这种老百姓喜欢的写法竟然不支持,话说这个写法也太奇葩了
               //  OQL Query1= Query.Select().Where(objuserinfo.username = "互联网fans").END;
     
                //默认应该是and吧
                objuserinfo.userpassword="1234567";
               OQL Query2 = Query.Select().Where(objuserinfo.username, "=", objuserinfo.userpassword,"=" ).END;
               List<SuperMarket.userinfo> test2 = EntityQuery<SuperMarket.userinfo>.QueryList(Query2);
     
                //来一个 or 
                //是在是太矛盾了 这个地方又要赋值了,无力吐槽了
               //OQL Query3 = Query.Select().Where(objuserinfo.username, "=", Query.Condition.OR(objuserinfo.userpassword, "=", "1234567")).END;
               //这个方式也不支持。。。。。。。。
     
               OQL Query3 = Query.Select().Where(Query.Condition.OR(objuserinfo.userpassword, "=", "1234567").OR(objuserinfo.username, "=", "互联网fans")).END;
     
               List<SuperMarket.userinfo> test3 = EntityQuery<SuperMarket.userinfo>.QueryList(Query3);
     
                //这个到底是and 还是or 呢?圆方怎么看医生呢?
               OQL Query4 = Query.Select().Where(Query.Condition.OR(objuserinfo.userpassword, "=", "1234567").AND(objuserinfo.username, "=", "互联网fans")).END;
     
               List<SuperMarket.userinfo> test4 = EntityQuery<SuperMarket.userinfo>.QueryList(Query4);
                
     
                //更复杂的 and 和or 
                //根据不同条件拼接 and 和or
                //医生来做个示范动作!
            }
  • 相关阅读:
    机器学习-分类算法-决策树,随机森林10
    机器学习-分类算法-模型选择与调优09
    机器学习-分类算法-精确率和召回率08
    机器学习-分类算法-朴素贝叶斯算法07
    机器学习-分类算法-K-近邻算法06
    java读取自定义配置文件并引用
    kafka发布消息报错LEADER_NOT_AVAILABLE
    Kettle位置参数(Argument)、命名参数(Parameter)、变量(Variable)
    kettle里的两个参数和一个变量
    如何在命令行下运行kettle的作业(job)和转换(transform)
  • 原文地址:https://www.cnblogs.com/qqloving/p/2752335.html
Copyright © 2011-2022 走看看