• thinkPHP 查询


    getField()  查询指定字段的值
    find()    查询一条数据
    select()   查询多条数据
    一、普通查询方式
        a、字符串
            $m->find($id);
            $arr=$m->where("sex=0 and username='gege'")->find();
            
        b、数组
            $data['sex']=0;
            $data['username']='gege';
            $arr=$m->where($data)->find();
                
            $arr = $m->where(array('sex'=>1,'name'=>'haha'))->select();

            注意:这种方式默认是and的关系,如果使用or关系,需要添加数组值
            $data['sex']=0;
            $data['username']='gege';
            $data['_logic']='or';

            $arr = $m->where(array('sex'=>1,'name'=>'haha','_logic'=>'or'))->select();
    二、表达式查询方式 (大小写都可以)
            $data['id']=array('lt',6);
            $arr=$m->where($data)->select();
            EQ 等于
            NEQ不等于
            GT 大于
            EGT大于等于
            LT 小于
            ELT小于等于
            LIKE 模糊查询
                $data['username']=array('like','%ge');
                $arr=$m->where($data)->select();

                $m->where(array('id'=>array('gt',2),'name'=>array('like','%郝%')))->select();
            NOTLIKE
                $data['username']=array('notlike','%ge%'); //notlike中间没有空格
                    $arr=$m->where($data)->select();

                注意:如果一个字段要匹配多个通配符
                $data['username']=array('like',array('%ge%','%2%','%五%'),'and');//如果没有第三个值,默认关系是or关系
                $arr=$m->where($data)->select();


            BETWEEN
                $data['id']=array('between',array(5,7));
                $arr=$m->where($data)->select();
                //SELECT * FROM `tp_user` WHERE ( (`id` BETWEEN 5 AND 7 ) )
                $data['id']=array('not between',array(5,7));//注意,not 和 between中间一定要有空格
                $arr=$m->where($data)->select();

            IN            

        $data['id']=array('in',array(4,6,7));            

        $arr=$m->where($data)->select();
                //SELECT * FROM `tp_user` WHERE ( `id` IN (4,6,7) )

                $data['id']=array('not in',array(4,6,7));
                $arr=$m->where($data)->select();
                //SELECT * FROM `tp_user` WHERE ( `id` NOT IN (4,6,7) )

    三、区间查询
            $data['id']=array(array('gt',4),array('lt',10));//默认关系是 and 的关系
            SELECT * FROM `tp_user` WHERE ( (`id` > 4) AND (`id` < 10) )

            $data['id']=array(array('gt',4),array('lt',10),'or') //关系就是or的关系

            $data['name']=array(array('like','%2%'),array('like','%五%'),'gege','or');  //不添or 就是and
            SELECT * FROM `tp_user` WHERE ( (`name` LIKE '%2%') OR (`name` LIKE '%五%') OR (`name` = 'gege') )
    四、统计查询
            count //获取个数
                $num = $m->where($data)->count();
            max   //获取最大数
                $arr = $m->max('id');  //取最大的ID值
            min   //获取最小数
            avg   //获取平均数
            sum   //获取总和
    五、SQL直接查询
        a、query 主要数处理读取数据的
            成功返回数据的结果集数组
            失败返回boolean false
            $m=M(); //空model对象 就可以查询
            $result=$m->query("select *  from tp_user where id >50");
            var_dump($result);
        b、execute 用于更新个写入操作
            成功返回影响行数
            失败返回boolean false
            $m=M();
            $result=$m->execute("insert into tp_user(`username`) values('ztz3')");
            var_dump($result);

  • 相关阅读:
    数据库中生成UUID的方式
    db2如果修改主机名之后
    linux修改主机名
    db2动态查看备份进度
    oracle-DG
    linux环境变量和对应文件的生效顺序
    数据泵与传统exp/imp对比
    oracle之ogg部署(RAC到单机)
    oracle之ogg部署(单机到单机)
    达梦 (实时主备+数据守护)测试
  • 原文地址:https://www.cnblogs.com/mr-amazing/p/3926593.html
Copyright © 2020-2023  润新知