日付フィールドの基礎

日付フィールドはデータ ソース タイプによって異なり、それらの表示はシステム ロケールに依存します。日付属性の表示、計算、または選択に応じて、データベースの日付フィールドを操作するための適切な方法を決定する必要があります。

[属性検索] や同様のクエリ構築ダイアログ ボックスでの日付フィールド値の選択と表示には SQL 構文が使用されますが、SQL 構文はデータベースやデータ形式に応じて異なります。詳細については、「SQL リファレンス」のトピックをご参照ください。

属性テーブルでの日付フィールドの計算と表示には、異なる形式と構文が使用されます。これは、ArcMap の [フィールド演算] が Python および VBScript 関数を使用し、表示形式がデータベースではなくシステムに依存するためです。このトピックでは、属性テーブルで日付フィールドを操作する方法と、(属性テーブルから [フィールド演算] コマンドで起動される) [フィールド演算] ジオプロセシング ツールの使用方法について説明します。

日付の表示

カバレッジまたはシェープファイルは、日付フィールドを「yyyy-mm-dd」形式で格納します。ジオデータベースは、日時を「yyyy-mm-dd hh:mm:ss AM または PM」として格納します。Windows システムの設定によって、「M/d/yy」、「MM/dd/yy」、「yy/MM/dd」などのように、日付が ArcMap で表示される方法が決まります。ArcMap は、日付の表示にシステムの短い日付形式(数値)を使用します。

日付フィールドの計算

日付フィールドを計算する際、ArcMap の [フィールド演算] は Python および VBScript の日付関数を使用します。関数の一部は、「yyyy-mm-dd hh:mm:ss AM または PM」形式の日時をサポートしています。ただし、カバレッジやシェープファイルでは、日時値の時間の部分が切詰められます。たとえば、「2002-08-20 12:00:00 PM」は、カバレッジやシェープファイルでは「2002-08-20」として格納されます。

Python の日付関数を使用して、日付を計算することができます。現在時間に等しい属性を計算する場合は、today() 関数を使用できます。

また、日付を計算するときに、2 桁の年を使用することもできます。date_field = dateserial(02,8,20) のように、日付を計算するときに 2 桁の年(この場合は 02)を指定すると、世紀を表す部分はシステムの設定によって制御されます。この設定は、Windows システムの [地域オプション] で調整できます。

日付を計算するときの 2 桁の年の使用についての詳細

関連項目


7/10/2012