ThinkPHP 查询数据的方式
1.普通查询方式
a.字符串
$m=M("User");
$arr=$m->where("username="lisi123" and password=123")->find();
dump($arr);
b.数组
$m=M("User");
$data["username"]="lisi123";
$data["password"]="123";
$data["_logic"]="or"; //注意没有此数组值,方式默认是 and 的关系,如果使用or关系,需添加此数组值
$arr=$m->where($data)->find();
dump($arr);
2.表达式查询方式
EQ 等于
NEQ 不等于
GT 大于
ECT 大于等于
LT 小于 //$data[id]=array("LT",5);
ELT 小于等于
LIKE 模糊查询 //$data["username"]=array("like","%li%");
//$arr=$m->where($data)->select();
NOTLIKE 不存在"li" //$data["username"]=array("notlike","%li%");
注意:如果一个字段匹配多个通配符
$data["username"]=array("like",array("%li%","%2%","%3%"),"and");
//SQL:SELECT * FROM `think_user` WHERE (`username` LIKE "%li%" AND `username` LIKE "%2%" AND `username` LIKE "%3%") //如果没有第三个值,默认关系是or关系
BETWEEN 在..之间
$data["id"]=array("between",array(1,3)); //SQL:SELECT * FROM `think_user` WHERE `id` BETWEEN 1 AND 3
NOTBTWEEN 不在..之间
$data["id"]=array("notbetween",array(1,3)); //SQL:SELECT * FROM `think_user` WHERE `id` NOT BETWEEN 1 AND 3
IN 存在
$data["id"]=array("in",array(1,5)); //SQL:SELECT * FROM `think_user` WHERE `id` IN (1,5)
NOTIN 存在
$data["id"]=array("in",array(1,5)); //SQL:SELECT * FROM `think_user` WHERE `id` NOT IN (1,5)
3.区间查询
$data["id"]=array(array("gt",1),array("lt",5)); //默认方式是and的关系
//SQL:SELECT * FROM `think_user` WHERE ( `id` > 1 AND `id` < 5 )
$data["id"]=array(array("gt",1),array("lt",5),"or"); //这种方式是or的关系
//SELECT * FROM `think_user` WHERE ( `id` > 1 OR `id` < 5 )
注意:
$data["username"]=array(array("like","%1%"),array("like","%2%"),lisi123); 默认and关系 //SQL:SELECT * FROM `think_user` WHERE ( `username` LIKE "%1%" AND `username` LIKE "%2%" AND `username` = "lisi123" )
$data["username"]=array(array("like","%1%"),array("like","%2%"),lisi123,"or"); 设置了or关系 //SQL:SELECT * FROM `think_user` WHERE ( `username` LIKE "%1%" OR `username` LIKE "%2%" OR `username` = "lisi123" )
4.统计查询
count //echo $m->count(); 获取用户数量
max //echo $m->max("id");获取id的最大值
min //echo $m->min("id");获取id的最小值
avg //echo $m->avg("id");获取id的平均数
sum //echo $m->sum("id");获取id的总和
5.SQL直接查询
a.query 主要处理读取数据
eg:成功返回数据的结果值
$m=M();
$arr=$m->query("select * from think_user where id>1");
dump($arr);
b.execute 用于更新和写入操作
eg:成功返回影响行数
$arr=$m->execute("insert into think_user("username","password","createtime","ip") values("zhang","11","223","11")");
声明:该文观点仅代表作者本人,入门客AI创业平台信息发布平台仅提供信息存储空间服务,如有疑问请联系rumenke@qq.com。
- 上一篇: thinkphp——滑动验证码
- 下一篇: Thinkphp3.2.3设置session周期无效的问题
