異なる必要があり、このようなテーブルA:文字(AB、BC、CD)のペアに対して1つの日付=「9999-12-31」の場合列のグループから最大値を表示する方法。最大値は、私が持っているパターン
ID | L1 |L2 | Date
-- |----- |---- | ---------
1 | A | B | 2003-01-01
---|------|-----|----------
2 | A | B | 2004-05-01
---|------|-----|----------
3 | B | C | 2003-01-01
---|------|-----|-----------
4 | B | C | 9999-12-31
---|------|-----|-----------
5 | C | D | 1998-02-03
---|------|-----|-----------
6 | C | D | 2004-05-01
ノーマルな状況があります。だから2組の文字(AB、CD)については、 '9999-12-31' の日付が間に合わず、これらの文字とIDを見るためにクエリを書く必要があります。
私はこのクエリは、正しい行を示していますが、私はまた、IDを確認する必要があり、これは私が行うことができなかったものです
select distinct L1, L2, max(date) from A GROUP BY
L1, L2
having max(date)<>'9999-12-31'
(文字のペアの最大の日付を参照する)のようなクエリを書きました。誰もIDを参照するためにクエリを書く方法を知っていますか? IDは常にユニークです
ありがとう!!
これははっきりしません。だから少なくとも1行に9999の日付があるので、B、Cを削除します。これは明らかです。しかし、A、Bの場合は両方の行が必要ですか、または最も日付の高い行だけが必要ですか? C、Dと同じです。 – mathguy
date = '9999-12-31'のないこのペアの文字の最高の日付をクエリに表示したいとします。クエリの結果では、A、B、C、Dの両方に最高の日付を持つ必要があります。 –