thinkphp的CURD和查询方式介绍

 这篇文章主要介绍了thinkphp的CURD和查询方式,有需要的朋友可以参考一下

对数据的读取 Read
 代码如下:
$m=new Model('User');
 
$m=M('User');
 
select
 
$m->select();//获取所有数据,以数组形式返回
 
find
 
$m->find($id);//获取单条数据
 
getField(字段名)//获取一个具体的字段值
 
$arr=$m->where('id=2')->getField('username');
 
 
三、ThinkPHP 3 创建数据    (重点)
 
对数据的添加 Create
 代码如下:
$m=new Model('User');
 
$m=M('User');
 
$m->字段名=值
 
$m->add();
 
 
返回值是新增的id号
 
四、ThinkPHP 3 删除数据    (重点)
代码如下:
$m=M('User');
 
$m->delete(2);               //删除id为2的数据
 
$m->where('id=2')->delete(); //与上面效果相同,也是删除id为2的数据
 
 
返回值是受影响行数
 
五、ThinkPHP 3 更新数据    (重点)
 
 代码如下:
$m=M('User');
 
$data['id']=1;
 
$data['username']='ztz2';
 
$m->save($data);             
 
 
返回值是受影响行数
 
============================================
 
一、普通查询方式
 
二、表达式查询方式
 
三、区间查询
 
四、统计查询
 
五、SQL直接查询
 
一、普通查询方式
 
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']=array('lt',6);
 
$arr=$m->where($data)->select();
 
 
EQ 等于
 
NEQ不等于
 
GT 大于
 
EGT大于等于
 
LT 小于
 
ELT小于等于
 
LIKE 模糊查询
 代码如下:
$data['username']=array('like','%ge');
 
$arr=$m->where($data)->select();
 
NOTLIKE
 
$data['username']=array('notlike','%ge%'); //notlike中间没有空格
 
    $arr=$m->where($data)->select();
 
 
 
 
注意:如果一个字段要匹配多个通配符
 
代码如下:
$data['username']=array('like',array('%ge%','%2%','%五%'),'and');//如果没有第三个值,默认关系是or关系
 
$arr=$m->where($data)->select();
 
BETWEEN
 
$data['id']=array('between',array(5,7));
 
$arr=$m->where($data)->select();
 
//SELECT * FROM `tp_user` WHERE ( (`id` BETWEEN 5 AND 7 ) )
 
$data['id']=array('not between',array(5,7));//注意,not 和 between中间一定要有空格
 
$arr=$m->where($data)->select();
 
IN
 
$data['id']=array('in',array(4,6,7));
 
$arr=$m->where($data)->select();
 
//SELECT * FROM `tp_user` WHERE ( `id` IN (4,6,7) )
 
$data['id']=array('not in',array(4,6,7));
 
$arr=$m->where($data)->select();
 
//SELECT * FROM `tp_user` WHERE ( `id` NOT IN (4,6,7) )
 
 
 
三、区间查询
 
 代码如下:
$data['id']=array(array('gt',4),array('lt',10));//默认关系是 and 的关系
 
//SELECT * FROM `tp_user` WHERE ( (`id` > 4) AND (`id` < 10) ) 
 
$data['id']=array(array('gt',4),array('lt',10),'or') //关系就是or的关系
 
$data['name']=array(array('like','%2%'),array('like','%五%'),'gege','or');
 
 
四、统计查询
 
count //获取个数
 
max   //获取最大数
 
min   //获取最小数
 
avg   //获取平均数
 
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);
 

时间: 2024-11-16 10:23:47

thinkphp的CURD和查询方式介绍的相关文章

thinkphp的CURD和查询方式介绍_php技巧

对数据的读取 Read 复制代码 代码如下: $m=new Model('User'); $m=M('User'); select $m->select();//获取所有数据,以数组形式返回 find $m->find($id);//获取单条数据 getField(字段名)//获取一个具体的字段值 $arr=$m->where('id=2')->getField('username'); 三.ThinkPHP 3 创建数据    (重点) 对数据的添加 Create 复制代码 代码

thinkPHP查询方式小结_php实例

本文实例总结了thinkPHP查询方式.分享给大家供大家参考,具体如下: 一.普通查询方式 1. 使用字符串查询: 复制代码 代码如下: $m->where(' id=1 and name="roge" ')->find(); 这种方法存在一个缺点,就是当数据表中的查询字段为字符串时,需要在字段值中加入引号. 2. 使用数组的方式(推荐使用) $data['name']="adfa"; $data['id']=3; $data['_logic']=&qu

开源面向对象数据库db4o之旅,第2部分 db4o查询方式

前言 在 db4o 之旅 系列文章的第一部分:初识 db4o 中,作者介绍了 db4o 的历 史和现状,应用领域,以及和 ORM 等的比较.在这篇文章中,作者将会介绍 db4o 的安装.启动以及三种不同的查询方式:QBE(Query by Example).SODA (Simple Object Database Access) 以及 NQ(Native Queries),并分别通 过这三种不同的途径实现了两个关联对象的查询.本文还示范了开发中最经常用 到的几个典型功能的 db4o 实现. 下载

Javascript实现Linq查询方式

Linq是.net平台一个重要的技术,全称Language Integrated Query.通过构建快速查询语句,可快速从数据库或集合中筛选数据集.以查询数据库相同的方式操作内存数据.       在ECMAScript 5th以后的版本中,Javascript实现了有限的有限的Linq查询方式,包括forEach, every, some, filter, map, reduce and reduceRight.        首先需要说明,以上这些方法并不是跨浏览器的,对版本有相应的限制.

《深入理解Elasticsearch(原书第2版)》一2.5.1 查询方式分类

2.5.1 查询方式分类 当然,对查询方式进行分类是一件艰难的任务,我们也不敢打包票说在这里给出的分类列表是唯一正确的.我们甚至可以说,如果你询问其他Elasticsearch使用者,他们可能会给出自己的分类方式,或者声称每个查询方式都可以被归入多个类别.有趣的是,他们有可能是对的.我们也曾考虑过多种分类方式存在的情况,不过,最终我们认为,每个查询方式都可以被归入以下列出的一个或多个类别中. 基本查询:这类查询允许针对索引的一部分进行检索,其输入数据既可以分析也可以不做分析.这类查询的一个关键特

《深入理解Elasticsearch(原书第2版)》一2.5 选择正确的查询方式

2.5 选择正确的查询方式 在<Elasticsearch Server,Second Edition>一书中,我们详细介绍了Elasticsearch的查询DSL,这一种使用JSON结构化的查询语言,可以构建极其复杂的查询语句.不过,在那本书中我们没有探讨在不同的场合可以用到哪些查询方式,以及应该使用哪种查询方式.对于一个在全文搜索引擎领域没有经验储备的人来说,Elasticsearch提供的查询方式显得太多了,而且容易让人迷惑.因此我们将在本书中对这方面的知识做一些深入探讨,从而引导读者如

thinkphp实现like模糊查询实例_php实例

本文实例讲述了thinkphp实现like模糊查询的方法,分享给大家供大家参考.具体实现方法如下: 目前使用thinkphp框架进行项目开发的人越来越多了,由于其封装性较好,导致了很多纯PHP开发的部分不易上手,本文实例即以like模糊查询为例对此加以说明. 这里主要通过举例来说明用法: ThinkPHP可以支持直接使用字符串作为查询条件,但是大多数情况推荐使用索引数组或者对象来作为查询条件,因为会更加安全. 一.使用字符串作为查询条件 这是最传统的方式,但是安全性不高, 例如: 复制代码 代码

Java Web开发之信息查询方式总结_JSP编程

本文实例讲述了Java Web开发之信息查询方式总结.分享给大家供大家参考.具体如下: 这里介绍的查询方式有: ① 根据某个特定的字段查询: ② 在多个字段中查询: ③ 根据任意字段查询: ④ 任意字段组合查询: ⑤ 多值查询. 根据某个特定的字段进行查询 用户在输入界面中输入要查询的字段的值,然后系统根据这个值进行查找. 下面的实例是根据用户名查询用户的详细信息,简单的效果图如下: 关键代码如下: <p>请输入要查询的姓名:</p> <form action="s

SQL两种简单分页查询方式

                   以前我们或许都用过了linq的skip and take方式进行分页查询,但是很少自己写sql的分页查询,因为大多数时候,我们都是在调用别人的方法.              最近看到一个文档,感觉方法里面实现的分页查询进入数据库调用的时候,实际最底层调用的还是SQL的分页查询,例如,我们用linq写个分页查询,转成sql表达式后发现:                               实际调用的时候,才发现SQL底层是这样进行分页的.