本文實例講述了Thinkphp連表查詢及數(shù)據(jù)導(dǎo)出的方法。分享給大家供大家參考,具體如下:
這今天實驗室的招新工作就要展開了,我們通過實驗室網(wǎng)站關(guān)聯(lián)到杭電OJ,大一的新生將他們杭電的用戶名在實驗室網(wǎng)站提交,網(wǎng)站就會通過網(wǎng)絡(luò)爬蟲到杭電OJ上面進行數(shù)據(jù)抓取存到實驗室數(shù)據(jù)庫。
現(xiàn)在我要做的事就是把新生表和新生OJ數(shù)據(jù)表聯(lián)合導(dǎo)出。實驗室網(wǎng)站是用thinkphp框架開發(fā)的。所以根據(jù)以前的工作經(jīng)驗。問題很快就解決了。
現(xiàn)在跟大家分享一下。
thinkphp的擴張類都是放在ORG目錄下面,在通過import()函數(shù)調(diào)用連表查看可以用高級試圖模式,也可以不用。
//不用高級視圖模式。//兩張表,userinfo和oj_data//導(dǎo)出學(xué)生信息$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框架的配置中設(shè)置了數(shù)據(jù)表前綴的,一定要注意,在除了模型調(diào)用會自動添加前綴,其他的都要手動加上。
學(xué)過SQL的都知道,sql語句允許表的別名使用。
所以我們再table()聲明使用表的時候,我們可以進行別名
table('lab_userinfo userinfo,lab_oj_data data');這個跟SQL 語句不一樣就在給表取別名的時候不用AS。
希望本文所述對大家基于ThinkPHP框架的PHP程序設(shè)計有所幫助。
新聞熱點
疑難解答
圖片精選