thinkphp数据查询方法总结select ,find,getField,query
|
1
2
|
$Model = new Model() // 实例化一个model对象 没有对应任何数据表$Model->query("select * from think_user where status=1"); |
如果刚学Thinkphp对框架不太了解可以用query($sql) 和 execute($sql) 两个方法可以实现任何的sql操作query用于查询操作,execute用于非查询操作。但是框架已经封装好了常用的方法,且用起来更方便。
下面是最常用的查询方法:
1.select()
|
1
2
3
4
5
6
7
8
9
10
11
12
|
// 将所有数据查出,失败返回 false,无结果返回 null$user = M('demo');$data = $user->select();dump($data);// 加入条件$user->field('name,sex')->where('id > 2')->order('age')->limit(3)->select();//查询主键值为30的信息$user->select('30');// 查询主键为21,23,27的值$user->select('21,23,27'); |
2.find()
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
// 查询出一条数据$user = M('demo');// 失败返回falseif($data = $user->find()){ dump($data);}// 加入where条件$user = M('demo');$data = $user->field('name,sex')->where('id > 2')->find();dump($data);// 返回一维数组$data->find('30');$manager->where("username = '$username' and password = '$password'")->find(); |
3.getField()
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
// 获取列数据中的第一条$user = M('demo');$data = $user->getField('name');//默认第一个// 第二个参数位true 则获取整列数据$user->where("id = 3")->getField('name',true);// 限制显示条数$nickname = $User->where('status=1')->getField('nickname',8);$nickname = $User->where('status=1')->limit(8)->getField('nickname',true);// 返回二维数组,键名为第一个$nickname = $User->where('status=1')->getField('id,nickname,sex');// 使用连接符':' 键名是id值,键值则是account:nickname连接组成的字符串$result = $User->where('status=1')->getField('id,account,nickname',':'); |
还有详细的查询方法详见 ThinkPHP3.2手册中的 "模型>查询语句" 章节。
thinkphp数据查询方法总结select ,find,getField,query的更多相关文章
- ThinkPHP数据查询与添加语句
在ThinkPHP框架中实现数据的查询操作 function ShowAll() { //Model:数据库中每张表对应一个模型 //类名是表名,类里面的成员变量是列名 //把一张表对应一个类,其中一 ...
- 数据查询语句:DQL(Data Query Language)
一.基础查询 1.语法:select 查询列表 from 表名; 2.特点:1.通过select查询完的结果,是一个虚拟的表格,不是真实存在 2.查询列表可以是:字段.表达式.常量.函数等 3 ...
- Django数据查询方法总结
__exact 精确等于 like ‘aaa’__iexact 精确等于 忽略大小写 ilike ‘aaa’__contains 包含 like ‘%aaa%’__icontains 包含 忽略大 ...
- YII2-数据库数据查询方法,关联查询with, joinWith区别和分页
一.ActiveRecord 活动记录 1.with关联查询 例如,查询评论 $post = Post::find()->with('comments'); 等价于以下结果集 SELECT * ...
- JSON数据查询方法
在进行前端项目开发的时候时长会遇到JSON的数据查找问题,如何方便快速查找?这里推荐一个linqjs组件,项目主页参见http://linqjs.codeplex.com/ 查询对象 var json ...
- django中常用的数据查询方法
https://blog.csdn.net/chen1042246612/article/details/84071006
- MyBaits一对一的查询方法
MyBaits一对一的查询方法 一:表数据与表结构 CREATE TABLE teacher( t_id INT PRIMARY KEY AUTO_INCREMENT, t_name ) ); CRE ...
- Mysql对表中 数据 查询的操作 DQL
准备数据,倒入sql文件 运行sql文件 得到四张表 select * from 表名 * 代表全部 1.AS子句作为别名 select studentname as "姓名" ...
- 使用ResultSet,写了一个通用的查询方法
此方法很烂,以后优化 /** * 通用的查询方法:SELECT */ @SuppressWarnings({ "unchecked", "rawtypes" } ...
随机推荐
- Python练习-装饰器版-为什么我的用户总被锁定
参考代码如下: 1.用户登录程序流程控制代码: # 编辑者:闫龙 if __name__ == '__main__': import UserLoginFuncation LoclCount=[]; ...
- php 传递赋值和地址赋值 &
更多内容推荐微信公众号,欢迎关注: 1.传递赋值 $a = 1; $b = 2; $a = $b; echo $a,$b; //结果为:5 5 2.地址赋值 $a = 1; $b = 2; $a = ...
- ubuntu安装Android Studio开发环境
1.下载 https://developer.android.com/studio/ 2.解压文件,将文件夹copy到/opt/ 3.进入/opt/android-studio/bin,运行./stu ...
- boost 时间
利用boost来获取当前时间又方便快捷,还不用考虑跨平台的问题. 1. 输出YYYYMMDD [cpp] view plaincopy #include <boost/date_time/gre ...
- MySQL实现强制查询走索引和强制查询不缓存
0.表结构如下:(包含两个索引) Create Table: CREATE TABLE `user` ( `userID` ) NOT NULL, `userCode` ) DEFAULT NULL, ...
- ip分片重组 ip_defrag
在ip_local_deliver中,如果检测到是分片包,则需要进行分片重组: ip_local_deliver |-->ip_is_fragment //判断是否为分片包 |-->ip_ ...
- re-sign重签名
准备: ① re-sign.jar重签名工具:(下载地址为:http://troido.de/downloads/category/1): ② 从D:\Android\sdk\build-tools\ ...
- 使用脚本实现killproc的功能
在shell提示符号下输入type killproc,会发现killproc实在 /sbin/目录下,通过man killproc可以查看这个脚本(姑且这么称为脚本)的用法,现在,把这个脚本的实现过程 ...
- samba和SELINUX 冲突
在使用Samba进行建立Window与Linux共享时,要是不能访问,出现“您可能没有权限使用网络资源”. setsebool -P samba_enable_home_dirs on setsebo ...
- 开发者常用的 Sublime Text 3 插件
1.官网下载 Sublime Text 3 (已有安装包的,请忽略) Sublime Text 官网下载地址 : http://www.sublimetext.com/ 2.打开 Sublime Te ...