1

レポートがある年ごとに1行を返すSQLクエリを実行しています。同じ結果を得るには、cakephp 1.3 コントローラーの構文が必要です。

SELECT DISTINCT Year( `dated` )
FROM `reports`
ORDER BY Year( `dated` ) ASC

私が試した私のcakephp 1.3クエリ:

$theYear = $this->Model->Database->find('all',array('fields'=>'DISTINCT Report.dated as Year')); // this still returns all entries, not distinct

また

$theYear = $this->Model->query('SELECT DISTINCT Report.dated from Report as Year ORDER by Report.dated ASC'); // returns bool(false)

私のケーキモデルでも機能を試しました:

function getYears()
{
    $ret = $this->query
      (
      "SELECT DISTINCT dated FROM reports as Year ORDER BY dated ASC"
     );
    return $ret;
} // returns NULL

予想される結果: 2011 2012 2013

4

1 に答える 1