歡迎使用CSDN markdown編輯器

2021-07-22 11:45:55 字數 1192 閱讀 7732

乙個企業表,乙個發布職位表,每個企業有發布多個職位,group by職位表裡的uid,也就是按企業分組,
排序是按最新發布職位的企業排在前邊,職位表裡有發布時間dateline欄位,但是group之後會找不到組裡最大時間戳,排序會失敗,解決辦法是找組裡最大的時間戳即可,重點是max()函式

a、使用兩表聯查,

$job = m('job');

$qy=$job

->join('wgb_user_profile on wgb_job.uid=wgb_user_profile.uid')

->field('max(wgb_job.dateline) as dt,wgb_user_profile.id,wgb_user_profile.name')

->order('dt desc')

->group('wgb_job.uid')

->limit(12)

->select();

$this->assign('qy',$qy);

b、先從職位表裡查詢出來排序好的企業id陣列,再找企業表裡查詢出來這個 主要使用field()和max()函式,

//例項化表

$job = m('job');

$qyy = m('user_profile');

$jobs=$job

->field('max(dateline) as dt,uid')

->group('uid')

->order('dt desc')

->limit(12)->select();

//取出來uid欄位,即企業uid

foreach($jobs as $k=>$v)

$wherearr['uid'] = array('in',$uid);

$as=implode(',',$uid);

$order= "field(uid,$as)";

$qyy = m('user_profile');

$qy = $qyy

->where($wherearr)

->limit(12)

->select();

$this->assign('qy',$qy);

歡迎使用CSDN markdow

本markdown編輯器使用stackedit修改而來,用它寫部落格,將會帶來全新的體驗哦 markdown 是一種輕量級標記語言,它允許人們使用易讀易寫的純文字格式編寫文件,然後轉換成格式豐富的html頁面。維基百科 使用簡單的符號標識不同的標題,將某些文字標記為粗體或者斜體,建立乙個鏈結等,詳細...

歡迎毛毛與妞妞使用CSDN markdown編輯器

建立乙個自定義列表 如何建立乙個註腳 注釋也是必不可少的 katex數學公式 新的甘特圖功能,豐富你的文章 uml 圖表 flowchart流程圖 匯出與匯入 你好!這是你第一次使用markdown編輯器所展示的歡迎頁。如果你想學習如何使用markdown編輯器,可以仔細閱讀這篇文章,了解一下mar...

歡迎使用CSDN markdow1n編輯器

本markdown編輯器使用stackedit修改而來,用它寫部落格,將會帶來全新的體驗哦 markdown 是一種輕量級標記語言,它允許人們使用易讀易寫的純文字格式編寫文件,然後轉換成格式豐富的html頁面。維基百科 使用簡單的符號標識不同的標題,將某些文字標記為粗體或者斜體,建立乙個鏈結等,詳細...