比较查询

  1. 在查询数据进行筛选时,我们采用where()方法,比如id=80; ```php Db::name(‘user’)->where(‘id’,80)->select();

Db::name(‘user’)->where(‘id’,’=’,80)->select();

  1. 2. where(字段名,查询条件),where(字段名,表达式,查询条件);
  2. 2. 其中,表达式不区分大小写,包括了比较、区间和时间三种类型的查询;
  3. 2. 使用<>(不等于)、>、<、>=、<=可以筛选出各种符合比较值的数据列表;
  4. ```php
  5. Db::name('user')->where('id','<>',80)->select();

区间查询

  1. 使用like表达式进行模糊查询;

    1. Db::name('user')->where('email','like','xiao%')->select();
  2. like表达式还可以支持数组传递进行模糊查询; ```php Db::name(‘user’)->where(‘email’,’like’,[‘xiao%’,’wu%’],’or’)->select();

SELECT * from tp_user where (email like ‘xiao%’ OR email like ‘wu%’)

  1. 3. like 表达式具有两个快捷键whereLike()和whereNotLike()
  2. ```php
  3. Db::name('user')->whereLike('email','xiao%')->select();
  4. Db::name('user')->whereNotLike('email','xiao%')->select();
  1. between 表达式具有两个快捷方式 whereBetween()和 whereNotBetween(); ```php Db::name(‘user’)->where(‘id’,’bwtween’,’19,25’)->select(); Db::name(‘user’)->where(‘id’,’bwtween’,[19,25])->select(); Db::name(‘user’)->whereBetween(‘id’,[19,25])->select(); Db::name(‘user’)->whereNotBetween(‘id’,[19,25])->select();
  1. 5. in表达式具有两个快捷方式whereIn()和whereNotIn();
  2. ```php
  3. Db::name('user')->where('id','in','19,25')->select();
  4. Db::name('user')->whereIn('id','19,25')->select();
  5. Db::name('user')->whereNot'id','19,25')->select();
  1. null 表达式具有两个快捷方式whereNull()和 whereNotNull();

    1. Db::name('user')->where('id','null')->select();
    2. Db::name('user')->where('id','not null')->select();
    3. Db::name('user')->whereNull('id')->select();
    4. Db::name('user')->whereNotNull('id')->select();

    其他查询

  2. 使用exp可以自定义字段后的SQL语句;

    1. Db::name('user')->where('id','exp','IN(19,21,25)')->select();
    2. Db::name('user')->whereExp('id','IN(19,21,25)')->select();