2011-07-26 21 views
3

私はCakePHPでクエリを構築していますが、find('count')にはエラーが発生するのでGROUP BYステートメントを使用できません。したがって、GROUP BYステートメントの代わりにDISTINCTフィールドをフィールドリストに使用しました。CakePHP:find( 'count')とDISTINCTフィールドとfind( 'all')フィールドとGROUP BYフィールド

だから、find('count', array('group' => 'field'))から私は今、アプリケーションの別の部分ではfind('count', array('fields' => 'DISTINCT field'))

を持って、私は上記と同じレコードをフェッチするfind('all')を使用しています。ここで、私はGROUP BYステートメントを使用することができていますので、私は持っている:

find('all', array('group' => 'field'))

私の質問は:同じ結果を返す、上記のクエリの両方がありますか?簡単に言えば、DISTINCT fieldfind('count')を組み合わせると、と同じ結果がfind('all')と返されます。

+0

あなたが生成されたSQLクエリを見ることができ、および/またはデータは、彼らがそれを決定するために戻ります。 –

+0

これは特別なケースです。私はこれが一般的に当てはまることを確認したい。 – linkyndy

+0

GROUP BYはどんなエラーを投げましたか? – deceze

答えて

10

古い投稿ですが、これに助けが必要で、最終的に答えが見つかったので、ここにあります。

あなたがこれを行う場合、彼らは同じになります...

find('count', array('fields' => 'COUNT(DISTINCT field) as count')) 
関連する問題