答えて
「平均的な日付」の定義は主観的ですが、あなたの日付をユリウスンの数字に変換して平均し、それを四捨五入してから日付に変換することができます。ここで
create table dates (dt DATE);
insert into dates
values ('24-APR-2012');
insert into dates
values ('01-JAN-2012');
insert into dates
values ('01-JAN-2013');
insert into dates
values ('25-DEC-1900');
select to_date(round(avg(to_number(to_char(dt, 'J')))),'J')
from dates;
SQLフィドルです:http://sqlfiddle.com/#!4/98ce9/1
ありがとう。ヘルプに感謝します。 – user1261700
Oracleは、当然、いくつかの日付計算を処理 - 例えばTRUNC(SYSDATE)+ 1は明日の日付を返します。
だから、別のアプローチが一定にあなたの日付を比較することです:
1)は定数(例えばSYSDATE)
2)平均日で距離を比較して、ラウンド、その計算
3)平均値をSYSDATE &に換算して過去のものと比較する。
ここでこれを実行するいくつかのコード(あなたのデータを持っているどんなフィールドでDTを置き換える)、これは上記のダン・A.のアプローチのちょうど半分の下の時間で走ったいくつかのサンプルデータに
TO_DATE(
TRUNC(SYSDATE) - ROUND(AVG(TRUNC(SYSDATE) - TRUNC(dt)))
)
は、です同じ出力が得られました。 DATETIMEデータを扱う際には有名な最後の言葉であることを理解しています。
ええ、それは私のソリューションよりも効率的に見えます。あなたは、計算と平均のための小さな「距離」を持っています。 –
「median」は一般的ではない明白な理由はありません。機能を正確にオラクルでは、まさに他の答えは何をしますか?これは、引数として数値データ型や数に暗黙的に変換することができ、数値以外のデータ型を取ることができhttps://docs.oracle.com/cd/B19306_01/server.102/b14200/functions086.htm
- ここ
は、Oracleのドキュメントへのリンクです。
SQL> desc x1
Name Null? Type
----------------------------------------- -------- ----------------------------
A NOT NULL NUMBER
D DATE
SQL> select * from x1;
A D
---------- ---------
1 11-DEC-14
2 13-DEC-14
3 22-DEC-14
4 02-DEC-14
SQL> select median(d) from x1;
MEDIAN(D)
---------
12-DEC-14
SYSDATE + AVG(dt - SYSDATE)
の日付に日付を変換する必要はありません。結果に時間が含まれないようにするには、式全体を切り捨てます。平均の計算に時間を使用したくない場合は、日付列(dt)を切り捨てます。 MEDIANはAVGと同じではありません。
- 1. のSQLite:日付と平均
- 2. SQLサーバーの日常平均
- 3. 日付の平均を計算する
- 4. 曜日別のSQLクエリ平均
- 5. MAX、MIN、平均および日付
- 6. 日付カラムのOracle SQLカウント
- 7. SQL Serverで日付の列の平均値を見つける方法
- 8. SQLクエリの平均時間
- 9. SQLの平均除算
- 10. Oracle SQL - 今週の平均売上高は、昨年の平均週売上高より高い
- 11. PHP年の日付を基準にした列の平均値
- 12. 加重平均日付の値の取得?
- 13. 1日あたりの平均ログインSQLクエリ
- 14. SQLクエリ - 日時フィールドからの平均時間
- 15. Oracle SQLで日付を計算する
- 16. 2日間の平均時間ルビー
- 17. 1日あたりの平均ルビーレンダー
- 18. SQLの移動平均の計算
- 19. 平均計算の範囲のSQLクエリ
- 20. 2つのフィールドのSQL計算平均
- 21. SQL - 今日から2ヶ月Oracleの日付
- 22. 正規化平均のT-SQL
- 23. SQLカウントと平均1つのクエリ
- 24. SQL Server 2008での平均計算
- 25. 複数の列と複数の日付の四分位の平均
- 26. Tableau平均値を上回る平均
- 27. 平均
- 28. 平均:
- 29. 平均値に最も近いSQL
- 30. SQLで時間平均を取る
「平均」日付とは何ですか?私はあなたがしようとしていることについてより具体的にする必要があると思います。 –