0

テーブルの設定が非常に複雑で、テーブル間の関係を修正する必要があり、今は時間がないため、find() メソッドのいずれかを使用してこれを達成することはできません。ここで簡単な修正を探しています。

私が達成したいのは、次のようなクエリを実行することだけです:

SELECT MAX( id ) as max FROM MyTable WHERE another_field_id = $another_field_id

次に、後で使用するために、その 1 つの ID を変数に割り当てる必要があります。

私が今持っている方法では、[{{max: 16}}] のようなものが返されます。必要な単一の値を取得するために、この結果セットに対して PHP を実行できる可能性があることはわかっていますが、すでに CakePHP でこれを行う方法があります。

4

2 に答える 2

0

この例は、CakePHP のドキュメントから直接引用したものです。findモデルのメソッドを使用して取得できるようですcount

$total = $this->Article->find('count');
    $pending = $this->Article->find('count', array(
        'conditions' => array('Article.status' => 'pending')
    ));
    $authors = $this->Article->User->find('count');
    $publishedAuthors = $this->Article->find('count', array(
       'fields' => 'DISTINCT Article.user_id',
       'conditions' => array('Article.status !=' => 'pending')
    ));
于 2013-08-13T04:32:47.960 に答える