SELECT info_key, info_value, info_status, edit_time
FROM (SELECT * FROM `detail` WHERE login = 'abc@abc.com' ORDER BY edit_time DESC ) AS aaa
GROUP BY info_keyphp
但願經過Thinkphp實現基於alias的子查詢,終於參考下面這個文章實現了。html
http://www.thinkphp.cn/update/122.html
thinkphp
以下是幫助手冊裏的原文。(搜索子查詢)
ui
從3.0版本開始新增了子查詢支持,有兩種使用方式:spa
一、使用select方法當select方法的參數爲false的時候,表示不進行查詢只是返回構建SQL,例如:code
// 首先構造子查詢SQL $subQuery = $model->field('id,name')->table('tablename')->group('field')->where($where)->order('status')->select(false);
當select方法傳入false參數的時候,表示不執行當前查詢,而只是生成查詢SQL。htm
二、使用buildSql方法get
$subQuery = $model->field('id,name')->table('tablename')->group('field')->where($where)->order('status')->buildSql();
調用buildSql方法後不會進行實際的查詢操做,而只是生成該次查詢的SQL語句(爲了不混淆,會在SQL兩邊加上括號),而後咱們直接在後續的查詢中直接調用。it
// 利用子查詢進行查詢 $model->table($subQuery.' a')->where()->order()->select()
構造的子查詢SQL可用於ThinkPHP的連貫操做方法,例如table where等。table