2016-09-12 13 views
0

私は、各レコードに日付である3つのフィールド(いくつかはヌルかもしれません)を含むテーブルを持っています。私は3つの日付フィールドのいずれかにある最大日付で降順で結果を並べ替えることができます。私はthisの答えをMySQLに求めていますが、これはまさに私がやりたいことですが、Accessに存在する関数がAccessに存在しないようです。私のデータは、私はどのように私はこのために私がしたい方法を取得するBY句私の注文を作成するのですMS Accces SQLの複数フィールドの最大注文方法

id date1  date2  date3 
------------------------------------ 
3 1/18/2001 6/2/2001  1/3/2003 
2 7/1/2001 1/2/2002  1/8/2001 
4 12/1/2001 5/4/2001  8/9/2001 
1 1/1/2001 1/2/2001  10/3/2001 

を返したいのですが

id date1  date2  date3 
------------------------------------ 
1 1/1/2001 1/2/2001  10/3/2001 
2 7/1/2001 1/2/2002  1/8/2001 
3 1/18/2001 6/2/2001  1/3/2003 
4 12/1/2001 5/4/2001  8/9/2001 

であれば、アメリカの日付の書式を使用して

好き?

答えて

1

残念ながら、MS Accessはleast()またはgreatest()を提供していません。あなたは、ブルートフォース方法でこれを行うことができます。

order by iif(date1 > date2 and date1 > date3, date1, 
      iif(date2 > date3, date2, date3) 
      ) 
+2

はあなたが意味するものではありませんでした: '順IIFによって(日付1> date2のと日付1> date3、日付1、IIF(日付2> date3、日付2、date3)' – Gustav

+0

@グスタフ...はい、間違いなく私が意味していたことです。 –

関連する問題