これを達成するためのエレガントな方法があるかどうかはわかりません:
データ
ID Ver recID (loads more columns of stuff)
1 1 1
2 2 1
3 3 1
4 1 2
5 1 3
6 2 3
したがって、ID を主キー、Ver をバージョン、recID をレコード ID (すべてのバージョンを結び付ける任意のベース ID) とします。
select
したがって、次のデータ、行 3、4、および 6 から取得したいと思います。つまり、特定のレコード ID の最高バージョンです。
1 つの SQL クエリでこれを行う方法はありますか? またはSELECT DISTINCT
、レコード ID に対して実行し、次に別のクエリを実行して最高値を取得する必要がありますか? または、ロットをアプリケーションに取り込み、そこからフィルタリングしますか?