新しいバージョンのSQLにはいくつかの問題がありますが、これはonly_full_group_byオプションを使用しています。私は2つのテーブル:センサーとデータを持っています。センサテーブルHAS_MANYデータ。したがって、データテーブルはセンサテーブルのpkへの外部キーを持ちます。ここで1つのリレーションは次のとおりです。Yii 1.1:PkがリレーションのためにSELECTに自動的に追加されました
'avg' => array(self::HAS_MANY, 'Data', 'sensor_id', 'select' => 'AVG(value) AS avg, date AS date', 'group' => 'date', 'order' => 'date desc')
aggrgatedされていないSELECTステートメントの列があるのでYiiは不平を言っています。この列は、自動的に生成されたクエリの選択に追加されるように思われ、データテーブルのPKで実際にクエリは次のとおりです。
SELECT AVG(value) AS avg, date as date, id_data FROM `data` `avg` WHERE ... GROUP BY date ORDER ...
私が何をしたいのかを添加PKやラップを削除することですそれはANY_VALUEであるため、only_full_group_byオプションはもう文句を言うことはありません。