查询方式的使用

一、普通查询方式

a、字符串查询

$arr=$m->where("sex=0 and username='gege' ")->find();

b、数组

$data['sex']=0;
$data['username']='gege';
$arr=$m->where($data)->find();

注意:这种方式默认是and的关系,如果使用or关系,需要添加数组值

$data['sex']=0;
$data['username']='gege';
$data['_logic']='or';

二、表达式查询方式

$data['id']=['lt',6]; 
$arr=$m->where($data)->select();
  • EQ 等于
  • NEQ不等于
  • GT 大于
  • EGT大于等于
  • LT 小于
  • ELT小于等于
  • LIKE 模糊查询
$data['username']=['like','%ge'];
$arr=$m->where($data)->select();

NOTLIKE

$data['username']=['notlike','%ge%']; //notlike中间没有空格
$arr=$m->where($data)->select();

注意:如果一个字段要匹配多个通配符

$data['username']=['like',['%ge%','%2%','%五%'],'and'];//如果没有第三个值,默认关系是or关系
$arr=$m->where($data)->select();

BETWEEN

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

IN

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

三、区间查询

$data['id']=[['gt',4],['lt',10]];//默认关系是 and 的关系 
//SELECT * FROM tp_user WHERE ( (id > 4) AND (id < 10) )
$data['id']=[['gt',4],['lt',10],'or'] //关系就是or的关系
$data['name']=[['like','%2%'],['like','%五%'],'gege','or'];

四、统计查询

  1. count //获取个数
  2. max //获取最大数
  3. min //获取最小数
  4. avg //获取平均数
  5. sum //获取总和

五、sql直接查询

a、query 主要数处理读取数据的,成功返回数据的结果集;失败返回boolean false.

$m=M();
$result=$m->query('select *  from t_user where id >50 ');
var_dump($result);

b、execute 用于更新个写入操作,成功返回影响行数;失败返回boolean false.

$m=M();
$result=$m->execute(' insert into t_user(username) values('ztz3') ');
var_dump($result);