SQL DATEPART関数の理解
Ethan Miller
Product Engineer · Leapcell

Key Takeaways
- SQLの
DATEPART
関数は、日付または時刻の値から特定の部分を整数として抽出します。 DATEPART
は、時間データのフィルタリング、グループ化、分析に広く使用されています。- さまざまな
datepart
引数により、日付と時刻の処理に柔軟性があります。
SQL ServerのDATEPART
関数は、日付または時刻の値から、年、月、日、時、分、秒などの特定の要素を抽出できる強力なツールです。この関数は、データ分析、レポート作成、および時間ベースのフィルタリングに特に役立ちます。
DATEPARTとは?
DATEPART
関数は、指定された日付の部分を表す整数を返します。一般的な構文は次のとおりです。
DATEPART(datepart, date)
datepart
: 返す日付の部分(例:年、月、日)。date
: 指定された部分を抽出する日付式。
例:
SELECT DATEPART(year, '2025-05-21') AS YearPart; -- 戻り値: 2025
サポートされているdatepart
引数
以下は、一般的に使用されるdatepart
引数の一部です。
datepart | 省略形 | 説明 | |
---|---|---|---|
year | yy, yyyy | 年 | |
quarter | qq, q | 四半期 | |
month | mm, m | 月 | |
dayofyear | dy, y | 年の日 | |
day | dd, d | 月の日 | |
week | wk, ww | 週番号 | |
weekday | dw, w | 曜日 | |
hour | hh | 時 | |
minute | mi, n | 分 | |
second | ss, s | 秒 | |
millisecond | ms | ミリ秒 | |
microsecond | mcs | マイクロ秒 | |
nanosecond | ns | ナノ秒 | |
tzoffset | tz | タイムゾーンオフセット(分) | |
iso_week | isowk, isoww | ISO 8601週番号 |
注意: DATEPART
関数は、日付の指定された部分に対応する整数値を返します。
実用的な例
特定の日付部分の抽出
SELECT DATEPART(year, '2025-05-21') AS YearPart, DATEPART(month, '2025-05-21') AS MonthPart, DATEPART(day, '2025-05-21') AS DayPart; -- 戻り値: 2025, 5, 21
年によるレコードのフィルタリング
SELECT * FROM Orders WHERE DATEPART(year, OrderDate) = 2025;
月ごとのデータのグループ化
SELECT DATEPART(month, OrderDate) AS OrderMonth, COUNT(*) AS TotalOrders FROM Orders GROUP BY DATEPART(month, OrderDate);
週末の識別
SELECT OrderID, OrderDate, CASE WHEN DATEPART(weekday, OrderDate) IN (1, 7) THEN '週末' ELSE '平日' END AS DayType FROM Orders;
考慮事項
-
週の最初の日:
DATEPART(weekday, date)
によって返される値は、週の最初の日を指定するSET DATEFIRST
の設定によって異なります。たとえば、米国では通常、日曜日が週の最初の日と見なされます(SET DATEFIRST 7
)。 -
ISO週番号:
iso_week
datepartはISO 8601標準に従っており、年の最初の週は最初の木曜日がある週です。これにより、標準のweek
datepartと比較して、週番号が異なる場合があります。 -
タイムゾーンオフセット:
DATEPART(tzoffset, date)
を使用すると、関数はタイムゾーンオフセットを分単位で返します。これは、datetimeoffset
データ型を扱う場合に特に役立ちます。
結論
DATEPART
関数は、日付と時刻の値を構成要素に分解するためのSQL Serverの不可欠なツールです。特定の時間枠でデータをフィルタリングしたり、分析のためにレコードをグループ化したり、レポート作成のために日付をフォーマットしたりする場合でも、DATEPART
はさまざまな時間データシナリオを効果的に処理するために必要な柔軟性を提供します。
FAQs
年、月、日などの特定の日付または時刻の要素を、日付または時刻の値から抽出します。
はい、DATEPARTを使用して、年や月などの任意の日付部分でデータをフィルタリングできます。
はい、異なる引数を使用して、標準およびISO週番号付けの両方をサポートします。
Leapcellは、バックエンドプロジェクトをホストするための最良の選択肢です。
Leapcellは、Webホスティング、非同期タスク、およびRedis向けの次世代サーバーレスプラットフォームです。
多言語サポート
- Node.js、Python、Go、または Rust で開発します。
無制限のプロジェクトを無料でデプロイ
- 使用量に対してのみ料金が発生します — リクエストも料金も発生しません。
比類のない費用対効果
- アイドル料金なしの従量課金制。
- 例:25ドルで、平均応答時間60msで694万リクエストをサポートします。
合理化された開発者エクスペリエンス
- 簡単なセットアップのための直感的なUI。
- 完全に自動化されたCI/CDパイプラインとGitOpsの統合。
- 実行可能な洞察を得るためのリアルタイムのメトリクスとロギング。
容易なスケーラビリティと高いパフォーマンス
- 高い並行性を容易に処理するための自動スケーリング。
- 運用上のオーバーヘッドはゼロ — 構築に集中するだけです。
詳細については、ドキュメントをご覧ください!
Xでフォローしてください:@LeapcellHQ