Thinkphp回顾之(四)查询方法深入学习
本次讲的查询方法主要有:表达式查询,模糊查询,between语句,in语句,区间查询,统计数据,普通方式查询,但大多数都只是引入数组而已,明白了第一个,其他的也就差不多全明白了,唯一要注意的是在后台中notlike中间没空格,而not in,not between中间必须有空格才能有效,不要与后面的前台标签搞混了,话不多说,直接上代码
public function showone(){
echo "欢迎你".$_GET['name'];//在页面上直接就可以Index/show/name/yjs进行传参数
//查询方法的一般使用
/*
* 1.表达式查询
* 大于GT,小于LT,等于EQ,大于等于GEQ,小于等于LEQ,不等于NEQ 恒等于heq !==是 nheq
$m=M('User');
$data['id']=array('GT','2');
$arr=$m->where($data)->select();
var_dump($arr);
$this->display();
* 也就是可以用数组的形式赋给where条件, *即大于2的id
*/
/*
* 2.模糊查询 notlike中间不能有空格,而not between最后中间必须有空格
$m=M('User');
$data['username']=array('notlike',array('%ge%','%2%'),'and');没有and默认为or
$arr=$m->where($data)->select();
var_dump($arr);
$this->display();
*即里面array中的查询内容必须都符合,又因为是notlike,所以只要不是两者都符合的内容都输出
*/
/*
* 2.between语句 not between中间必须有空格;
$m=M('User');
$data['id']=array('not between',array(5,7));
$arr=$m->where($data)->select();
var_dump($arr);
$this->display();
*只要不是5-7之间的就输出
*/
/*
* 2.in语句 not in中间必须有空格;
$m=M('User');
$data['id']=array('not between',array(5,7));
$arr=$m->where($data)->select();
var_dump($arr);
$this->display();
*只要不是5,7,8三个中的id的内容都输出
*/
/*
* 区间查询
$m=M('User');
//$data['id']=array(array('gt',1),array('lt',8));//两个数组默认为and,作用是求在1到8之间的数据
$data['id']=array(array('lt',4),array('gt',8),'or');
//这里array(array(),array());这样是and关系
而array('like',array('%ge%','%2%'));默认为or
$arr=$m->where($data)->select();
$this->assign('id',$arr);
//var_dump($arr);
$this->display();
*/
/*
* 统计数据
$m=M('User');
$data['id']=array('lt',8);
$count=$m->where($data)->count();
//var_dump($arr);
$this->display();
*/
/*求最大max
* 最小min
* 平均数avg
* 求和sum
$m=M('User');
$maxid=$m->max('id');
echo $maxid;
$count=$m->where($data)->count();
//var_dump($arr);
$this->display();
*其他方法相同
*/
/*
* 普通方式查询
* query();处理读取数据的(查询)
* execute();更新写入操作
$m=M();
$arr=$m->query("select * from tp_user where id>5");
//成功返回结果集,失败返回Boolean false
var_dump($arr);
*/
/*
* execute();更新写入操作(更新)
*
$m=M();
$arr=$m->execute("insert into tp_user(`username`,`sex`) values('dc','0')");
//成功返回影响行数,失败返回Boolean false
var_dump($arr);
*/
}
}