0
私は2つのカラムaとbを持つテーブルを持っています。ここで、aはIDで、bはタイムスタンプです。 別名であるすべてのaを選択する必要がありますが、IDごとに最新の行のみを気にします。Postgresはタイムスタンプに基づいて別のものを選択します
I.e.私は、b値に対して別のaの条件を選択する方法が必要です。
ポストグルでDISTINCT ONを使用してこれを行う方法はありますか?
乾杯
私は2つのカラムaとbを持つテーブルを持っています。ここで、aはIDで、bはタイムスタンプです。 別名であるすべてのaを選択する必要がありますが、IDごとに最新の行のみを気にします。Postgresはタイムスタンプに基づいて別のものを選択します
I.e.私は、b値に対して別のaの条件を選択する方法が必要です。
ポストグルでDISTINCT ONを使用してこれを行う方法はありますか?
乾杯
@a_horse_with_no_nameが示唆するように、溶液はthe manualとして
SELECT DISTINCT ON (a) a, b FROM the_table ORDER BY a, b DESC
あるセットの "最初の行" は、クエリ ない限り、予測不可能であること
注言います行の一意の順序を保証するのに十分な列にソートされます は
DISTINCT
フィルターに到着します。 (DISTINCT ON
処理ORDER BY
ソート後に起こる。)
'によってthe_table順から(a)のA、B、Bのdesc'に異なる選択しますか? –
最新の情報: 'select * from ztable t whereは存在しません(select * from ztable x where x.a = t.a and x.b> t.b); ' – joop
a_horse_with_no_name - DISTINCTの前後に順序が適用されますか? @ joopあなたはそれがどのように動作するかを説明することができます。私はそれを受け入れたものとしてマークします – JMzance