[tp3.2.1]sql查询语句(一)
字符串条件查询,
索引数组条件查询
对象条件查询
SQL语句
大小写是一样的,
但是,执行的时候有一个小写到大写的转换,所以最好写大写
$condition=new \stdClass();//对象形式查询
stdClass是php内置类,可以理解为一个空类,这里要把条件作为字段保存到其中,
而 反斜杠\ 是将命名空间设置为 根目录, 否则会导致当前目录找不到此类。
表达式查询
大于 小于 等于
自定义表达式
格式:
$map[‘字段名‘]=array(‘表达式‘,‘查询条件‘);
// 本类由系统自动生成,仅供测试用途
namespace Home\Controller;
use Think\Model;
use Think\Controller;
class IndexController extends Controller {
public function index() {
// echo ‘<meta content-type=text/html;charset=utf-8/>‘;
echo ‘<pre>‘;
// $user=new Model(‘User‘);
// var_dump( $user->select());
$user = M ( ‘User‘ );
// var_dump($user->where(‘id=5 AND user="樱桃小丸子"‘)->select());
// $condition[‘id‘]=5;
// $condition[‘user‘]="樱桃小丸子";
// var_dump($user->where($condition)->select());
// //上面两条条件是AND的关系
// $condition[‘_logic‘]="OR";
// var_dump($user->where($condition)->select());
$condition = new \stdClass (); // 对象形式查询
// 前面的反斜杠表示按系统提供的查找std类
$condition->id = 5;
$condition->user = ‘樱桃小丸子‘;
$condition->_logic = ‘OR‘;
var_dump ( $user->where ( $condition )->select () );
}
public function query() {
$user = M ( ‘User‘ );
echo ‘<pre>‘;
// $map[‘id‘]=array(‘eq‘,5);//这里到map1是随便起到,没有规定
// $map[‘id‘]=array(‘neq‘,5);//id不等于5
// $map[‘id‘]=array(‘gt‘,5);//id大于5
// $map[‘id‘]=array(‘egt‘,5);//大于等于
// $map[‘id‘]=array(‘lt‘,5);//小于
// $map[‘id‘]=array(‘elt‘,5);//小于
// 模糊查询,有三种
// $map[‘user‘]=array(‘LIKE‘,‘%小%‘);//第一种,单一条件
// $map[‘user‘]=array(‘notLIKE‘,‘%小%‘);//第二种, 大小写都无所谓
// 注意,这里not like没有空格的
// 多条件 模糊查询
// $map[‘user‘]=array(‘like‘,array(‘%小%‘,‘%蜡%‘),‘and‘);
// between - 区间查找,从m到n
// $map[‘id‘]=array(‘between‘,‘5,7‘);//找出5到7之间的(5 6 7)
// $map[‘id‘]=array(‘between‘,array(‘5‘,‘7‘));//这是另一种形式
// not between - 注意中间四是有一个空格的
// $map[‘id‘]=array(‘not between‘,‘5,7‘);
// in
// $map[‘id‘]=array(‘in‘,‘5,6,8‘);
// $map[‘id‘]=array(‘in‘,array(‘5‘,‘7‘,‘8‘));
// not in
// $map[‘id‘]=array(‘not in‘,‘5,6,8‘);
// $map[‘id‘]=array(‘not in‘,array(‘5‘,‘7‘,‘8‘));
// 自定义 查询 - exp
$map[‘id‘]=array(‘exp‘,‘=5‘);
$map[‘id‘]=array(‘exp‘,‘>10‘);
// 构建一个复杂点的
$map [‘id‘] = array (
‘exp‘,
‘=5‘
);
$map [‘user‘] = array (
‘exp‘,
‘="樱桃小丸子"‘
);
$map [‘_logic‘] = ‘or‘;
var_dump ( $user->where ( $map )->select () );
}
}
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。