シリアル番号に関連付けられた最後の展開を見つけようとしていますが、最新の日付を取得せずに、特定のシリアル番号に対して複数の行を取得します。次のように入力すると、エラー 1241 が発生します。
select deployment, device_serial_number from action_archive
where (.....)
group by device_serial_number
order by 'date'
シリアル番号に関連付けられた最後の展開を見つけようとしていますが、最新の日付を取得せずに、特定のシリアル番号に対して複数の行を取得します。次のように入力すると、エラー 1241 が発生します。
select deployment, device_serial_number from action_archive
where (.....)
group by device_serial_number
order by 'date'
おそらく問題は、「'date'」の引用符です。これを試して:
SELECT deployment,
device_serial_number
FROM action_archive
WHERE (.....)
GROUP BY device_serial_number
ORDER BY date
また、GROUP BY に問題がある可能性があると思います。「展開」も追加する必要があるかもしれません。
1 つの方法では、サブクエリを使用します。次のようになります。
select aa.*
rom action_archive aa
where (.....) and
`date` = (select max(aa2.date)
from action_archive aa2
where . . . and
aa2.device_serial_number = aa.device_serial_number
);