本文实例讲述了ThinkPHP连表查询及数据导出的方法。分享给大家供大家参考,具体如下:
这今天实验室的招新工作就要展开了,我们通过实验室网站关联到杭电OJ,大一的新生将他们杭电的用户名在实验室网站提交,网站就会通过网络爬虫到杭电OJ上面进行数据抓取存到实验室数据库。
现在我要做的事就是把新生表和新生OJ数据表联合导出。实验室网站是用thinkPHP框架开发的。所以根据以前的工作经验。问题很快就解决了。
现在跟大家分享一下。
thinkPHP的扩张类都是放在ORG目录下面,在通过import()函数调用连表查看可以用高级试图模式,也可以不用。
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框架的配置中设置了数据表前缀的,一定要注意,在除了模型调用会自动添加前缀,其他的都要手动加上。
所以我们再table()声明使用表的时候,我们可以进行别名
PHP;">
table('lab_userinfo userinfo,lab_oj_data data');
这个跟sql 语句不一样就在给表取别名的时候不用AS。
原文链接:https://www.f2er.com/thinkphp/18779.html