Thinkphp连表查询及数据导出方法示例


Posted in PHP onOctober 15, 2016

本文实例讲述了Thinkphp连表查询及数据导出的方法。分享给大家供大家参考,具体如下:

这今天实验室的招新工作就要展开了,我们通过实验室网站关联到杭电OJ,大一的新生将他们杭电的用户名在实验室网站提交,网站就会通过网络爬虫到杭电OJ上面进行数据抓取存到实验室数据库。

现在我要做的事就是把新生表和新生OJ数据表联合导出。实验室网站是用thinkphp框架开发的。所以根据以前的工作经验。问题很快就解决了。

现在跟大家分享一下。

thinkphp的扩张类都是放在ORG目录下面,在通过import()函数调用连表查看可以用高级试图模式,也可以不用。

//不用高级视图模式。
//两张表,userinfo和oj_data
//导出学生信息
$user = $userinfo->table('lab_userinfo,lab_oj_data')
->field(
'lab_userinfo.userid,
lab_userinfo.truename,
lab_userinfo.year,
lab_userinfo.sex,
lab_userinfo.subject,
lab_userinfo.email,
lab_userinfo.date,
lab_oj_data.username as username,
lab_oj_data.solved as solved,
lab_oj_data.Submit as Submit,
lab_oj_data.AC as AC')
->where('lab_userinfo.userid=lab_oj_data.userid and pass=0')->order('lab_oj_data.solved desc')
->select();

需要注意的是。在thinkphp框架的配置中设置了数据表前缀的,一定要注意,在除了模型调用会自动添加前缀,其他的都要手动加上。

学过SQL的都知道,sql语句允许表的别名使用。

所以我们再table()声明使用表的时候,我们可以进行别名

table('lab_userinfo userinfo,lab_oj_data data');

这个跟SQL 语句不一样就在给表取别名的时候不用AS。

再就是数据导出问题,可参考前面的文章《PHP实现导出excel数据的类库用法示例》

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

PHP 相关文章推荐
php设计模式 Builder(建造者模式)
Jun 26 PHP
PHP Undefined index报错的修复方法
Jul 17 PHP
PHP查询数据库中满足条件的记录条数(两种实现方法)
Jan 29 PHP
php使用mb_check_encoding检查字符串在指定的编码里是否有效
Nov 07 PHP
php下载excel无法打开的解决方法
Dec 24 PHP
php常用数学函数汇总
Nov 21 PHP
yii实现图片上传及缩略图生成的方法
Dec 04 PHP
php将文本文件转换csv输出的方法
Dec 31 PHP
浅谈php中urlencode与rawurlencode的区别
Sep 05 PHP
基于php编程规范(详解)
Aug 17 PHP
Laravel学习教程之本地化模块
Aug 18 PHP
PHP使用递归按层级查找数据的方法
Nov 10 PHP
PHP实现导出excel数据的类库用法示例
Oct 15 #PHP
PHP数组操作简单案例分析
Oct 15 #PHP
PHP链表操作简单示例
Oct 15 #PHP
PHP在线打包下载功能示例
Oct 15 #PHP
PHP文件上传处理案例分析
Oct 15 #PHP
PHP小偷程序的设计与实现方法详解
Oct 15 #PHP
基于php判断客户端类型
Oct 14 #PHP
You might like
用PHP实现文件上传二法
2006/10/09 PHP
利用PHP实现智能文件类型检测的实现代码
2011/08/02 PHP
PHP中对于浮点型的数据需要用不同的方法解决
2014/03/11 PHP
Centos下升级php5.2到php5.4全记录(编译安装)
2015/04/03 PHP
详解php的socket通信
2015/08/11 PHP
Symfony控制层深入详解
2016/03/17 PHP
PHP房贷计算器实例代码,等额本息,等额本金
2017/04/01 PHP
在Laravel中使用MongoDB的方法示例
2019/11/11 PHP
ThinkPHP5&5.1实现验证码的生成、使用及点击刷新功能示例
2020/02/07 PHP
用Greasemonkey 脚本收藏网站会员信息到本地
2009/10/26 Javascript
javascript动态改变img的src属性图片不显示的解决方法
2010/10/20 Javascript
javascript中String类的subString()方法和slice()方法
2011/05/24 Javascript
ajax异步刷新实现更新数据库
2012/12/03 Javascript
JavaScript获取和设置CheckBox状态的简单方法
2013/07/05 Javascript
JS实现可调整倒计时间代码分享
2015/08/18 Javascript
jQuery实现的自动加载页面功能示例
2016/09/04 Javascript
JS与jQuery实现隔行变色的方法
2016/09/09 Javascript
JavaScript ES6中CLASS的使用详解
2016/11/22 Javascript
使用BootStrap进行轮播图的制作
2017/01/06 Javascript
bootstrap组件之导航组件使用方法
2017/01/19 Javascript
vue2.0 子组件改变props值,并向父组件传值的方法
2018/03/01 Javascript
jquery+ajax实现异步上传文件显示进度条
2020/08/17 jQuery
Python开发常用的一些开源Package分享
2015/02/14 Python
python判断图片宽度和高度后删除图片的方法
2015/05/22 Python
Python实现二维数组输出为图片
2018/04/03 Python
python 爬取小说并下载的示例
2020/12/07 Python
PyQt5通过信号实现MVC的示例
2021/02/06 Python
canvas压缩图片以及卡片制作的方法示例
2018/12/04 HTML / CSS
经典演讲稿汇总
2014/05/19 职场文书
体育教育毕业生自荐信
2014/06/29 职场文书
公司周年庆活动方案
2014/08/25 职场文书
2015年教学工作总结
2015/04/02 职场文书
致创业您:正能量激励人心句子(48条)
2019/08/15 职场文书
致创业的您:这类人不适合餐饮创业
2019/08/19 职场文书
用Python将库打包发布到pypi
2021/04/13 Python
MySQL的全局锁和表级锁的具体使用
2021/08/23 MySQL