&の日付をフォーマットする集計関数は11:10:45
から11h 10m 45s
などのカスタム方法でPostgreSQLのようなものですか?または私は部品を抽出するか、自分でそれらを連結する必要がありますか?PostgreSQLの書式化時間の集計関数の日付( 'date_format')
問題は、TO_CHAR関数の完全なマニュアルをチェックinterval
&の日付をフォーマットする集計関数は11:10:45
から11h 10m 45s
などのカスタム方法でPostgreSQLのようなものですか?または私は部品を抽出するか、自分でそれらを連結する必要がありますか?PostgreSQLの書式化時間の集計関数の日付( 'date_format')
問題は、TO_CHAR関数の完全なマニュアルをチェックinterval
にnumber of days
で特別に発生し、それはあなたが
http://www.postgresql.org/docs/9.1/interactive/functions-formatting.html
はい、彼らは同じ間隔で同じように働くでしょうか?私は間隔で「数日」を取得したい場合はどうすればいいですか?ここで 'DDD'は' day of year(001-366) 'を返します。 –
日数フォーマッタが組み込まれているとは思いません。あなたは、 '(抽出する(区間 '三日' /(24 * 3600)からのエポック):: int'またはそれに類するものを使用して秒単位で構築する必要があります –
がするIntervalStyle設定のPostgreSQLの異なる値を設定してみてくださいやりたいことができます:
db=# show intervalstyle ;
IntervalStyle
---------------
postgres
db=# select interval '3 days 11:10:45';
interval
-----------------
3 days 11:10:45
db=# set intervalstyle = 'postgres_verbose';
SET
db=# select interval '3 days 11:10:45';
interval
-----------------------------------
@ 3 days 11 hours 10 mins 45 secs
db=# set intervalstyle = 'iso_8601';
SET
db=# select interval '3 days 11:10:45';
interval
---------------
P3DT11H10M45S
あなたの質問はあまり明確ではありません。あなたは間隔
に日の
番号を検索したい場合は、
EXTRACT
を使用することができます。SELECT EXTRACT(day from '7 week'::interval) AS d d ---- 49
注意与えられたとして、これは間隔のサブフィールドを抽出することを。間隔は正規化されていないか、正当化されていません。 30日の月
justify_interval()
SELECT EXTRACT(day from justify_interval('7 week'::interval)) AS d; d ---- 19
間隔最初の使用を正当化するために、49日から控除されています。あなただけ取得するには日付を引くことができ
SELECT '2012-3-23'::date - '2012-3-1'::date AS d; d ---- 22
:あなただけの日付の間にある日の数をしたい場合は
SELECT EXTRACT(day from '24h'::interval); SELECT EXTRACT(day from '1 months'::interval);
:
は、したがって、これらの式は、0日を返しますその間の日数を示す整数。
またはタイムスタンプ間:
SELECT EXTRACT (day from '2012-03-25 23:12'::timestamp - '2010-03-01 03:34'::timestamp) AS d; d ----- 755
は、なぜあなたは、集計関数が必要なのでしょうか?ここにあなたのSQLを投稿できますか? – vyegorov
質問の「集計」は誤解であり、OPはプレーンな機能を求めていると私は推測しています。 –
実際、私はすでにこの目的のために 'AVG()'や 'SUM()'のようなfunctinがあると思っていました。だから私はそこに集計した。タイトルから削除する必要がありますか? –