ArcGIS Server でサポートされている SQL 関数

デフォルトでは、ArcGIS Server は標準化されたクエリを適用します。開発者は、マップ、フィーチャ、イメージ、および WFS サービスを REST または SOAP を通じて操作するとき、標準化された SQL クエリを使用する必要があります。これは、SQL インジェクション攻撃を防ぐのに役立ちます。詳細については、「標準化されたクエリについて」をご参照ください。

データベース固有の WHERE 句構文を現在使用しているアプリケーション開発者は、アプリケーションのコード内にある WHERE 句を更新して、ArcGIS Server がサポートする一般的な SQL 構文を使用する必要があります。サポートされている SQL 関数とその構文は次のとおりです。アプリケーション内で次の関数と構文が使用されている場合、ArcGIS Server は、サービスが使用するデータベースの仕様に合わせてそれらを変換します。

関数タイプ

関数

説明

注意事項

日付

CURRENT_DATE

セッションのタイム ゾーンにおける現在の日付を返します。

Datefield < CURRENT_DATE

次の日付とタイムスタンプの構文だけがサポートされています。

date 'yyyy-mm-dd'(例: Datefield = date '2012-05-29'

timestamp 'yyyy-mm-dd hh:mm:ss'(例: Datefield = timestamp '2012-05-29 15:14:25'

CURRENT_TIMESTAMP

現在の現地時間を返します。

Timestampfield < CURRENT_TIMESTAMP

EXTRACT(extract_field FROM extract_source)

年、月、日、時間、分など、日付/時刻の一部を返します。

extract_field 引数には、YEAR、MONTH、DAY、HOUR、MINUTE、または SECOND のいずれかのキーワードを指定できます。

11 月のすべての行を検索します。

EXTRACT(MONTH FROM Datefield) = 11

算術演算

ABS(numeric_exp)

指定した数値式の絶対値(正の値)を返します。

CEILING(numeric_exp)

指定した数値式以上で、最も小さな整数を返します。

FLOOR(numeric_exp)

指定した数値式以下で、最も大きな整数を返します。

LOG(float_exp)

指定した浮動小数点式の自然対数を返します。

LOG10(float_exp)

指定した浮動小数点式の常用対数を返します。

POWER(numeric_exp, integer_exp)

指定した式の、指定した累乗の値を返します。

POWER(Numericfield, 2) = 16

ROUND(numeric_exp, integer_exp)

指定した長さまたは精度に丸めた数値を返します。

TRUNCATE(numeric_exp, integer_exp)

値を丸めずに、特定の長さまたは精度にした数値を返します。

文字列

CHAR_LENGTH(string_exp)

入力文字列の長さ(文字数)を返します。

CONCAT(string_exp1, string_exp2)

複数の文字列を連結した文字列を返します。

LOWER(string_exp)

大文字のデータを小文字に変換した文字式を返します。

SUBSTRING(string_exp FROM start FOR length)

文字またはテキスト式の一部を返します。

Stringfield の値から、最初の 2 文字が Ch である行をすべて検索します。

SUBSTRING(Stringfield FROM 1 FOR 2)='Ch'

UPPER(string_exp)

小文字のデータを大文字に変換した文字式を返します。

6/13/2014