簡単に言えば、特にタイムスタンプの列を含むテーブルがあります。最新の(つまり最大値の)タイムスタンプを持つ行を取得したい。現在、私はこれを行っています:
SELECT * FROM table ORDER BY timestamp DESC LIMIT 1
しかし、私はむしろこのようなことをしたいと思います:
SELECT * FROM table WHERE timestamp=max(timestamp)
ただし、SQLiteはこのクエリを拒否します:
SQL error: misuse of aggregate function max()
ドキュメントはこの動作を確認しています(ページの下部):
集計関数は、SELECTステートメントでのみ使用できます。
私の質問は、selectを並べ替えたり、返される行の数を1に制限したりせずに、タイムスタンプが最大の行を取得するクエリを作成することは可能ですか?これは可能であるように思われますが、私のSQL-fuは嗅ぎまわっていないと思います。