[tp3.2.1]sql查询语句(⼀)基本查询⽅式
字符串条件查询,
索引数组条件查询
对象条件查询
SQL语句
⼤⼩写是⼀样的,
但是,执⾏的时候有⼀个⼩写到⼤写的转换,所以最好写⼤写
$condition=new \stdClass();//对象形式查询
stdClass是php内置类,可以理解为⼀个空类,这⾥要把条件作为字段保存到其中,
⽽反斜杠\ 是将命名空间设置为根⽬录,否则会导致当前⽬录不到此类。
表达式查询
⼤于⼩于等于
⾃定义表达式
格式:
$map['字段名']=array('表达式','查询条件');
<?php
// 本类由系统⾃动⽣成,仅供测试⽤途
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']="樱桃⼩丸⼦";
sql 字符串转数组
// 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 () );
}
}

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。