カレンダー四半期判定
2024年5月15日はQ2に入り、その四半期は2024年4月1日から6月30日までです。日付を入力すると、四半期とその初日・最終日、含まれる3か月が分かります。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- 日付
- 2024-05-15
- 年
- 2,024
- 月
- 5
- 日
- 15
- 四半期
- 2
カレンダー四半期は、民事年を分ける四つの固定された三か月ブロックの一つです。Q1は1月1日から3月31日、Q2は4月1日から6月30日、Q3は7月1日から9月30日、Q4は10月1日から12月31日までです。財務チーム、製品ロードマップ、学校暦、コンプライアンス報告は、ある日がどの四半期に属し、そのブロックの包含的な開始日と終了日が何かを常に問いかけます。本判定器は、年・月・日を四桁・二桁・二桁の厳密なISO暦日として受け取り、うるう年の2月を含むグレゴリオ暦上にその日が本当に存在するかを確認し、月を一から四の四半期番号へ写像し、四半期ラベル、開始ISO日付、終了ISO日付、その四半期に属する三か月を返します。平年の2月29日や4月31日のような存在しない日付は、黙って繰り越すのではなく明確な検証エラーで失敗します。
ISO日付からカレンダー四半期への対応付け
ハイフン付き・固定幅の国際ISO形式で書かれた年・月・日の暦日から始め、すべてのクライアントが同じ三つの整数に合意できるようにします。まず年が実用的なグレゴリオ範囲(1から9999)にあり、月が1から12の間であることを確認します。次に世界の民事暦で用いるうるう年規則を適用します。
年が4で割り切れるときうるう年ですが、世紀年はさらに400で割り切れる場合に限ってうるう年です。この規則により2024年や2000年では2月29日が合法となり、2023年や1900年では違法となります。うるう状態が分かったらその年の各月の長さを参照し、月の長さを超える日(例:4月31日や2月30日)を拒否します。
三つ組が有効なら、単純な整数写像で月を四半期に変換します。1〜3月は第1四半期、4〜6月は第2、7〜9月は第3、10〜12月は第4で、月マイナス1を3で割った床に1を加えるのと同じです。各四半期の開始と終了はその年の固定民事境界です。
うるう年でも2月は四半期の最終月ではないため、四半期終了日は変わりません。
実務でカレンダー四半期判定が現れる場面
財務・経理チームは請求書、予約、取締役会資料をカレンダー四半期でラベル付けし、年次報告が月だけの曖昧なキーなしで集計できるようにします。プロダクトマネージャはロードマップのマイルストーンとOKRをQ1〜Q4に対してスケジュールし、フィルタやリマインダ窓を作るときに包含的な開始・終了日を必要とします。
データウェアハウスはファクト表を四半期で分割し、ホストローカル時計ではなく民事ISO日付から導いた安定した四半期番号を各ソース行に刻印しなければなりません。コンプライアンス暦や学期はしばしば期限を四半期最終日として公開するため、検証器は与えられた日の四半期と範囲検査用の終了日の両方を必要とします。
後からカスタム年始月の会計四半期、年内通算日、二日間の営業日数、ISO週番号が必要なら、本カレンダー四半期判定ページに載せすぎず、別の検索意図とランディングとして扱ってください。
よくある質問
カレンダー四半期とは何ですか?
Q1は1月1日–3月31日、Q2は4月1日–6月30日、Q3は7月1日–9月30日、Q4は10月1日–12月31日です。境界は入力と同じ年の民事暦日です。
うるう年で四半期終了日は変わりますか?
いいえ。 2月は四半期の最終月ではないため、うるう年でも平年でもQ1は3月31日に終わります。うるう規則は2月29日が有効な入力日かどうかだけに影響します。
必要な日付形式は何ですか?
四桁年と二桁の月・日からなる厳密なISO YYYY-MM-DDです。2024-5-15や2024/05/15のような値は拒否され、すべてのクライアントが同じ文字列に合意します。
2023-02-29のような無効な日付ではどうなりますか?
エラーメッセージはその年・月にその日が無効であることを説明します。
1月1日や12月31日のような境目の日はどの四半期ですか?
1月1日はQ1、12月31日はQ4に入ります。四半期の最終日はその四半期のままで、次の四半期にずれることはありません。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/date/quarter-of-year \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"date":"2024-05-15"}'const res = await fetch("https://api.kit.forhosting.com/date/quarter-of-year", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"date": "2024-05-15"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/date/quarter-of-year",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"date": "2024-05-15"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/date/quarter-of-year", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"date":"2024-05-15"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"date":"2024-05-15"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/date/quarter-of-year", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"date": "2024-05-15"
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "date.quarter_of_year",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
無料のブラウザツールと有料APIは一つの純粋な同型関数を共有するため、教室デモと自動パイプラインが同じ入力で食い違うことはありません。
ISO日付からカレンダー四半期への対応付け
パイプライン全体は乱数シードも壁時計タイムスタンプもJavaScriptのDateオブジェクトもネットワーク呼び出しもない決定的整数演算であり、同一入力は常に同一のJSONを生みます。
送信内容と返却内容
パターンには合うが実在しない暦日(非うるうの2月29日や1〜12外の月)も、問題を名指しするメッセージで失敗し、クライアントが推測なしに修正できます。古典的な確認例:5月15日はQ2で境界は4月1日〜6月30日、1月1日はQ1、12月31日はQ4、四半期境界自身は次へ滑らず正しいブロックに着地します。必須文字列フィールドdateに、2024-05-15のような厳密なISO暦日を送ります。欠落フィールド、非文字列値、四・二・二桁パターンに合わない文字列はinvalid_inputで失敗し課金されません。成功時の応答は正規化日付文字列、数値の年・月・日、1〜4の整数quarter、おなじみのQ1〜Q4文字列のquarter_label、その民事ブロックの包含的ISO日付であるquarter_startとquarter_end、三つの月番号配列months_in_quarter、真偽値is_leap_year、月→四半期規則を記した短いformula文字列を含みます。成功したAPI呼び出しの料金は公開ベースの$0.002/件で、検証失敗は前払い残高を消費しません。
実務でカレンダー四半期判定が現れる場面
本機能は純粋なparseエンジンのため、API料金は成功1件あたり公開ベース$0.002で、検証失敗は残高を消費しません。
連携の活用例
財務・取締役会レポート
各予約・請求のISO日付をquarter_startとquarter_end付きでQ1–Q4に写像し、四半期集計とフィルタをツール間で一貫させます。
ロードマップとOKR窓
マイルストーンにquarter_labelと包含境界を刻み、ホストのタイムゾーンなしにダッシュボードが「今期」をフィルタできるようにします。
ウェアハウス分割とバッチラベル
厳密なYYYY-MM-DD入力から安定した四半期番号を分割キー用に導き、存在しない暦日には明確なinvalid_inputを返します。
技術的な質問
料金はいくらですか?
ブラウザツールは無料でローカル実行です。APIリクエストは前払いKIT残高を成功1件あたり$0.002で使用し、無効入力は課金されません。