2017-09-11 24 views
0

以下は、テーブルから日付のリストを取得するためのSQLクエリです。Group by節 - 出力が期待どおりでない

select t2.counter_date as myDates from table1 t1; 

出力:以下

myDates 

2014-03-14 00:00:00 
2014-05-11 00:00:00 
2014-11-03 00:00:00 
2014-12-23 00:00:00 
2015-01-12 00:00:00 
2015-08-08 00:00:00 
2016-03-14 00:00:00 
2017-03-14 00:00:00 
2017-03-19 00:00:00 

ソリューションである:以下で

select min(t1.counter_date) as oldDate,max(t1.counter_date) as latestDate from table1 t1; 
+1

タイムスタンプで 'min()'と 'max()'はどうやって動作しないのですか? –

+0

タイムスタンプで試してみたらどうしたのですか? – Alfabravo

+0

エラーは発生しませんが、同じ日付はoldestDate列とlatestDate列で繰り返されます。 – user8190500

答えて

1

demoあなたのクエリが正しい結果を与えていることがわかります。問題はあなたのデータになければなりません。

編集:編集後、問題のある箇所が明確になります。あなたは次のクエリを実行すると:min(date)より

SELECT min(date), max(date) 
FROM tab 
GROUP BY date 

は、グループ内だけで1日があるのでmax(date)に等しくなければなりません。

+0

投稿を参照してください、私は編集し、正確な詳細を追加しました。私はそれが結果を得るために2つのテーブルを使用しているクエリとそれがあると思います。任意のアドバイス – user8190500

+1

@ user8190500 - Radimが言っていることは、あなたが 'GROUP BY'節でt2.counter_dateを持つべきでないということです。 – Phylyp

関連する問題