TableQuery<T> クラス

  • java.lang.Object
    • com.microsoft.azure.storage.table.TableQuery<T>

型パラメーター

T

nullary コンストラクターを TableEntity 実装し、格納するクラス型。 注: 内部クラスを使用してクラス型を定義する場合は、 クラスを静的としてマークします。

public class TableQuery

指定したテーブルに対するクエリを表す クラス。 インスタンスは TableQuery<T> 、クエリの実行時に使用するクエリ パラメーターを集計します。 クエリを実行するには、 または のいずれかの CloudTableClient メソッドを呼び出す必要があります。 パラメーターは、テーブル クエリの実行時にエンコードされ、サーバーに渡されます。

fluent 構文を使用してテーブル クエリを作成するには、 from(final Class<T> clazzType) 静的ファクトリ メソッドと where(final String filter)select(final String[] columns)、および take(final Integer take) ミューテーター メソッドがそれぞれ オブジェクトへの参照を返します。この参照は、1 つの式に連結できます。 静的クラス ファクトリ メソッドを from(Class) 使用して、指定した TableEntity 実装型のエンティティを持つ名前付きテーブルで実行されるインスタンスを作成します。 メソッドを where(final String filter) 使用して、返されるエンティティのフィルター式を指定します。 メソッドを select(final String[] columns) 使用して、返すテーブル エンティティのプロパティを指定します。 クエリによって take(final Integer take) 返されるエンティティの数を制限するには、 メソッドを使用します。 でこれらのメソッドを複数回呼び出すのを妨げるものはないため、 に保存された値は実行順に最後に検出されることに注意してください。

たとえば、fluent 構文を使用してテーブル クエリを作成できます。

この例では、PartitionKey 値が "ProductsMNO" で、RowKey 値が "Napkin" 以上であるすべてのエンティティの "Products" テーブルに対してクエリを作成し、最初の 25 個の一致するエンティティを要求し、共通プロパティと "InventoryCount" という名前のプロパティのみを選択し、オブジェクトとして DynamicTableEntity 返します。

メソッドまたはメソッドでwhere(final String filter)使用するフィルター式は、 で定義されている比較演算子と でOperators定義QueryComparisonsされている論理演算子を使用して、オーバーロードされたgenerateFilterCondition(String propertyName, String operation, final boolean value)メソッドとcombineFilters(String filterA, String operator, String filterB)メソッドで fluent 構文を使用して作成setFilterString(final String filterString)できます。 フィルター比較の最初のオペランドはプロパティ名である必要があり、2 番目のオペランドは定数に評価される必要があることに注意してください。 PartitionKey プロパティと RowKey プロパティの値は、比較目的の型です。

テーブル クエリで使用できる値については、MSDN トピック「 テーブルとエンティティのクエリ」で詳しく説明しますが、クエリの実行時に行われるので、値内のスペース文字を URL エンコードする必要はありません。

コンストラクターとTableQuery#from(Class)静的ファクトリ メソッドにはTableQuery#TableQuery(Class)、nullary コンストラクターを実装TableEntityし、含むクラス型が必要です。 を使用して EntityResolver<T>クエリを実行する場合、呼び出し元は クラス型として を指定 TableServiceEntity できます。

コンストラクターの概要

コンストラクター 説明
TableQuery()

TableQuery<T> のインスタンスを初期化します。 テーブル エンティティ型を設定しないと、このテーブル クエリを実行できません。

TableQuery(final Class<T> clazzType)

指定したテーブル エンティティ型を使用して を TableQuery<T> 初期化します。 これ以上特殊化された型が必要ない場合、呼び出し元はクラス型パラメーターとして を指定 TableServiceEntity できます。

メソッドの概要

修飾子と型 メソッドと説明
String combineFilters(String filterA, String operator, String filterB)

2 つのフィルター条件に指定された論理演算子を使用してフィルター条件を作成します。

static<T extends TableEntity> TableQuery<T> from(final Class<T> clazzType)

インスタンスを構築し、そのテーブル エンティティ型を TableQuery<T> 定義する静的ファクトリ メソッド。 メソッドはインスタンス参照を TableQuery<T> 返します。これにより、追加のメソッドをチェーンしてクエリを変更できます。

作成された TableQuery<T> インスタンスは、指定したクラス型 T のテーブル エンティティに対して特殊化されます。それ以上特殊化された型が必要ない場合、呼び出し元はクラス型パラメーターとして を指定 TableServiceEntity できます。

String generateFilterCondition(String propertyName, String operation, final boolean value)

値のプロパティ フィルター条件文字列を生成します。 次の例のように、指定した操作を使用してプロパティをブール値として書式設定された値と比較する、フィルター式で使用する書式設定された文字列を作成します。

このステートメントは、次の値に設定します。

String generateFilterCondition(String propertyName, String operation, final byte[] value)

値のプロパティ フィルター条件文字列を生成します。 次の例のように、指定した操作を使用してプロパティをバイナリ値として書式設定された値と比較するフィルター式で使用する書式設定された文字列を作成します。

このステートメントは、次の値に設定します。

String generateFilterCondition(String propertyName, String operation, final Byte[] value)

値のプロパティ フィルター条件文字列を生成します。 次の例のように、指定した操作を使用してプロパティをバイナリ値として書式設定された値と比較するフィルター式で使用する書式設定された文字列を作成します。

このステートメントは、次の値に設定します。

String generateFilterCondition(String propertyName, String operation, final Date value)

値のプロパティ フィルター条件文字列を生成します。 次の例のように、指定した操作を使用してプロパティを値と比較し、datetime 値として書式設定されたフィルター式で使用する書式設定された文字列を作成します。

このステートメントは、次のような値に設定されます。

String generateFilterCondition(String propertyName, String operation, final double value)

値のプロパティ フィルター条件文字列を生成します。 次の例に示すように、指定した操作を使用してプロパティと値を比較するフィルター式で使用する書式設定された文字列を作成します。この値は、二重値として書式設定されます。

このステートメントは、次の値に設定します。

String generateFilterCondition(String propertyName, String operation, final int value)

値のプロパティ フィルター条件文字列を生成します。 次の例のように、指定した操作を使用してプロパティを数値として書式設定された値と比較する、フィルター式で使用する書式設定された文字列を作成します。

このステートメントは、次の値に設定します。

String generateFilterCondition(String propertyName, String operation, final long value)

値のプロパティ フィルター条件文字列を生成します。 次の例のように、指定した操作を使用してプロパティを数値として書式設定された値と比較する、フィルター式で使用する書式設定された文字列を作成します。

このステートメントは、次の値に設定します。

String generateFilterCondition(String propertyName, String operation, final String value)

値のプロパティ フィルター条件文字列を生成します。 次の例のように、指定した操作を使用してプロパティと値を比較し、文字列値として書式設定された、フィルター式で使用する書式設定された文字列を作成します。

このステートメントは、次の値に設定します。

String generateFilterCondition(String propertyName, String operation, final UUID value)

値のプロパティ フィルター条件文字列を生成します。 次の例に示すように、指定した操作を使用してプロパティと UUID 値として書式設定された値を比較する、フィルター式で使用する書式設定された文字列を作成します。

このステートメントは、次の値に設定します。

String generateFilterCondition(String propertyName, String operation, String value, EdmType edmType)

プロパティ フィルター条件文字列を生成します。 指定した操作を使用してプロパティを値と比較し、指定した として書式設定されたフィルター式で使用する書式設定された文字列を作成します EdmType

UriQueryBuilder generateQueryBuilder()

内部使用のために予約されています。 テーブル クエリを UriQueryBuilder 表す オブジェクトを作成します。

Class<T> getClazzType()

クエリによって返されるテーブル エンティティのクラス型を取得します。

String [] getColumns()

テーブル クエリで指定されたテーブル エンティティ プロパティ名の配列を取得します。 テーブル クエリで select 句でプロパティ名が指定されていない場合、テーブル内のすべてのプロパティが既定で返されます。 返すテーブル エンティティ プロパティは、プロパティ名の配列をパラメーターとして持つ メソッドまたは select(final String[] columns) メソッドのsetColumns(final String[] columns)呼び出しで指定できます。

システム プロパティ 、、、 は、 で指定されているかどうかに関係なく、テーブル サービスから自動的に TableQuery<T> 要求されることに注意してください。

String getFilterString()

テーブル クエリで指定されたフィルター式を取得します。 テーブル クエリでフィルター式が指定されていない場合、テーブル内のすべてのエンティティが既定で返されます。 返されるエンティティのフィルターは、 メソッドまたは where(final String filter) メソッドのsetFilterString(final String filterString)呼び出しで指定できます。

String getSourceTableName()

テーブル クエリで指定されたソース テーブルの名前を取得します。

Integer getTakeCount()

テーブル クエリで指定されたクエリから返されるエンティティの数を取得します。 この値がテーブル クエリで指定されていない場合は、最大 1,000 エントリが返されます。 返すエンティティの数は、 メソッドまたは take(final Integer take) メソッドのsetTakeCount(final Integer takeCount)呼び出しで指定できます。

によって返される値が 1,000 を超える場合、クエリの実行時に が StorageException スローされます。

TableQuery<T> select(final String[] columns)

テーブル クエリの実行時に返されるテーブル エンティティのプロパティの名前を定義します。 句は、サーバーから返されるテーブル プロパティを制限するために使用されるテーブル クエリでは省略可能です。 既定では、テーブル エンティティのすべてのプロパティがクエリから返されます。

システム プロパティ 、、、 は、 で指定されているかどうかに関係なく、テーブル サービスから自動的に TableQuery<T> 要求されることに注意してください。

void setClazzType(final Class<T> clazzType)

クエリによって返されるテーブル エンティティのクラス型を設定します。 テーブル クエリを実行するには、クラス型が必要です。

これ以上特殊化された型が必要ない場合、呼び出し元はクラス型パラメーターとして を指定 TableServiceEntity できます。

void setColumns(final String[] columns)

テーブル クエリの実行時に返されるテーブル エンティティ プロパティのプロパティ名を設定します。 既定では、テーブル エンティティのすべてのプロパティがクエリから返されます。

システム プロパティ 、、、 は、 で指定されているかどうかに関係なく、テーブル サービスから自動的に TableQuery<T> 要求されることに注意してください。

void setFilterString(final String filterString)

テーブル クエリで使用するフィルター式を設定します。 フィルター式は省略可能です。既定では、テーブル クエリはテーブル内のすべてのエンティティを返します。

メソッドでsetFilterString(final String filterString)使用するフィルター式は、 で定義されている比較演算子と でOperators定義QueryComparisonsされている論理演算子を使用して、オーバーロードされたgenerateFilterCondition(String propertyName, String operation, final boolean value)メソッドとcombineFilters(String filterA, String operator, String filterB)メソッドで fluent 構文を使用して作成できます。 フィルター比較の最初のオペランドはプロパティ名である必要があり、2 番目のオペランドは定数に評価される必要があることに注意してください。 PartitionKey プロパティと RowKey プロパティの値は、比較目的の型です。 たとえば、テーブル クエリで PartitionKey 値が "AccessLogs" のすべてのエンティティに対してクエリを実行するには、

テーブル クエリで使用できる値については、MSDN トピックで詳しく説明します

テーブルとエンティティのクエリを実行しますが、クエリの実行時に行われるので、値内のスペース文字を URL エンコードする必要はありません。

フィルター文字列内では、15 個以下の個別比較が許可されることに注意してください。

void setSourceTableName(final String sourceTableName)

テーブル クエリのソース テーブルの名前を設定します。 テーブル クエリには、実行するソース テーブルが必要です。

void setTakeCount(final Integer takeCount)

クエリが返すエンティティの数の上限を設定します。 この値がテーブル クエリで指定されていない場合、既定では最大 1,000 エントリが返されます。

パラメーターに指定された値が 1,000 を超える場合、クエリの実行時に が StorageException スローされます。

TableQuery<T> take(final Integer take)

クエリから返されるエンティティ数の上限を定義します。 この値がテーブル クエリで指定されていない場合、既定では最大 1,000 エントリが返されます。

パラメーターに指定された値が 1,000 を超える場合、クエリの実行時に が StorageException スローされます。

TableQuery<T> where(final String filter)

テーブル クエリのフィルター式を定義します。 指定されたフィルター式を満たすエンティティだけが、クエリから返されます。 フィルター式の設定は任意です。テーブル クエリでフィルター式が指定されなかった場合、既定によりテーブル内のすべてのエンティティが返されます。

メソッドでwhere(final String filter)使用するフィルター式は、 で定義されている比較演算子と でOperators定義QueryComparisonsされている論理演算子を使用して、オーバーロードされたgenerateFilterCondition(String propertyName, String operation, final boolean value)メソッドとcombineFilters(String filterA, String operator, String filterB)メソッドで fluent 構文を使用して作成できます。 フィルター比較の最初のオペランドはプロパティ名である必要があり、2 番目のオペランドは定数に評価される必要があることに注意してください。 PartitionKey プロパティと RowKey プロパティの値は、比較目的の型です。 たとえば、テーブル クエリで PartitionKey 値が "AccessLogs" のすべてのエンティティに対してクエリを実行するには、

テーブル クエリで使用できる値については、MSDN トピックで詳しく説明します

テーブルとエンティティのクエリを実行しますが、クエリの実行時に行われるので、値内のスペース文字を URL エンコードする必要はありません。

フィルター文字列内では、15 個以下の個別比較が許可されることに注意してください。

コンストラクターの詳細

TableQuery

public TableQuery()

TableQuery<T> のインスタンスを初期化します。 テーブル エンティティ型を設定しないと、このテーブル クエリを実行できません。

TableQuery

public TableQuery(final Class clazzType)

指定したテーブル エンティティ型を使用して を TableQuery<T> 初期化します。 これ以上特殊化された型が必要ない場合、呼び出し元はクラス型パラメーターとして を指定 TableServiceEntity できます。

Parameters:

clazzType - java.lang.Classクエリのテーブル エンティティ型を表す クラスTの 。 クラス T は、 を実装 TableEntity し、nullary コンストラクターを持つ型である必要があります。

メソッドの詳細

combineFilters

public static String combineFilters(String filterA, String operator, String filterB)

2 つのフィルター条件に指定された論理演算子を使用してフィルター条件を作成します。

Parameters:

filterA - String最初に書式設定されたフィルター条件を指定する 。
operator - Stringまたは Operators.ORを指定する Operators.AND
filterB - String最初に書式設定されたフィルター条件を指定する 。

Returns:

String結合されたフィルター式を表す 。

from

public static static TableQuery from(final Class clazzType)

インスタンスを構築し、そのテーブル エンティティ型を TableQuery<T> 定義する静的ファクトリ メソッド。 メソッドはインスタンス参照を TableQuery<T> 返します。これにより、追加のメソッドをチェーンしてクエリを変更できます。

作成された TableQuery<T> インスタンスは、指定したクラス型 T のテーブル エンティティに対して特殊化されます。それ以上特殊化された型が必要ない場合、呼び出し元はクラス型パラメーターとして を指定 TableServiceEntity できます。

Parameters:

clazzType - java.lang.Classクエリのテーブル エンティティ型をTableEntity表す インターフェイスを実装する クラスTの 。

Returns:

TableQuery<T>エンティティ型の特殊化が設定されたインスタンス。

generateFilterCondition

public static String generateFilterCondition(String propertyName, String operation, final boolean value)

値のプロパティ フィルター条件文字列を生成します。 次の例のように、指定した操作を使用してプロパティをブール値として書式設定された値と比較する、フィルター式で使用する書式設定された文字列を作成します。

このステートメントは、次の値に設定します。

Parameters:

propertyName - String比較するプロパティの名前を指定する 。
operation - String使用する比較演算子を指定する 。
value - booleanプロパティと比較する値を指定する 。

Returns:

String書式設定されたフィルター条件を表す 。

generateFilterCondition

public static String generateFilterCondition(String propertyName, String operation, final byte[] value)

値のプロパティ フィルター条件文字列を生成します。 次の例のように、指定した操作を使用してプロパティをバイナリ値として書式設定された値と比較するフィルター式で使用する書式設定された文字列を作成します。

このステートメントは、次の値に設定します。

Parameters:

propertyName - String比較するプロパティの名前を指定する 。
operation - String使用する比較演算子を指定する 。
value - byteプロパティと比較する値を指定する配列。

Returns:

String書式設定されたフィルター条件を表す 。

generateFilterCondition

public static String generateFilterCondition(String propertyName, String operation, final Byte[] value)

値のプロパティ フィルター条件文字列を生成します。 次の例のように、指定した操作を使用してプロパティをバイナリ値として書式設定された値と比較するフィルター式で使用する書式設定された文字列を作成します。

このステートメントは、次の値に設定します。

Parameters:

propertyName - String比較するプロパティの名前を指定する 。
operation - String使用する比較演算子を指定する 。
value - Byteプロパティと比較する値を指定する配列。

Returns:

String書式設定されたフィルター条件を表す 。

generateFilterCondition

public static String generateFilterCondition(String propertyName, String operation, final Date value)

値のプロパティ フィルター条件文字列を生成します。 次の例のように、指定した操作を使用してプロパティを値と比較し、datetime 値として書式設定されたフィルター式で使用する書式設定された文字列を作成します。

このステートメントは、次のような値に設定されます。

Parameters:

propertyName - String比較するプロパティの名前を指定する 。
operation - String使用する比較演算子を指定する 。
value - java.util.Dateプロパティと比較する値を指定する 。

Returns:

String書式設定されたフィルター条件を表す 。

generateFilterCondition

public static String generateFilterCondition(String propertyName, String operation, final double value)

値のプロパティ フィルター条件文字列を生成します。 次の例に示すように、指定した操作を使用してプロパティと値を比較するフィルター式で使用する書式設定された文字列を作成します。この値は、二重値として書式設定されます。

このステートメントは、次の値に設定します。

Parameters:

propertyName - String比較するプロパティの名前を指定する 。
operation - String使用する比較演算子を指定する 。
value - doubleプロパティと比較する値を指定する 。

Returns:

String書式設定されたフィルター条件を表す 。

generateFilterCondition

public static String generateFilterCondition(String propertyName, String operation, final int value)

値のプロパティ フィルター条件文字列を生成します。 次の例のように、指定した操作を使用してプロパティを数値として書式設定された値と比較する、フィルター式で使用する書式設定された文字列を作成します。

このステートメントは、次の値に設定します。

Parameters:

propertyName - String比較するプロパティの名前を指定する 。
operation - String使用する比較演算子を指定する 。
value - intプロパティと比較する値を指定する 。

Returns:

String書式設定されたフィルター条件を表す 。

generateFilterCondition

public static String generateFilterCondition(String propertyName, String operation, final long value)

値のプロパティ フィルター条件文字列を生成します。 次の例のように、指定した操作を使用してプロパティを数値として書式設定された値と比較する、フィルター式で使用する書式設定された文字列を作成します。

このステートメントは、次の値に設定します。

Parameters:

propertyName - String比較するプロパティの名前を指定する 。
operation - String使用する比較演算子を指定する 。
value - longプロパティと比較する値を指定する 。

Returns:

String書式設定されたフィルター条件を表す 。

generateFilterCondition

public static String generateFilterCondition(String propertyName, String operation, final String value)

値のプロパティ フィルター条件文字列を生成します。 次の例のように、指定した操作を使用してプロパティと値を比較し、文字列値として書式設定された、フィルター式で使用する書式設定された文字列を作成します。

このステートメントは、次の値に設定します。

Parameters:

propertyName - String比較するプロパティの名前を指定する 。
operation - String使用する比較演算子を指定する 。
value - Stringプロパティと比較する値を指定する 。

Returns:

String書式設定されたフィルター条件を表す 。

generateFilterCondition

public static String generateFilterCondition(String propertyName, String operation, final UUID value)

値のプロパティ フィルター条件文字列を生成します。 次の例に示すように、指定した操作を使用してプロパティと UUID 値として書式設定された値を比較する、フィルター式で使用する書式設定された文字列を作成します。

このステートメントは、次の値に設定します。

Parameters:

propertyName - String比較するプロパティの名前を指定する 。
operation - String使用する比較演算子を指定する 。
value - UUIDプロパティと比較する値を指定する 。

Returns:

String書式設定されたフィルター条件を表す 。

generateFilterCondition

public static String generateFilterCondition(String propertyName, String operation, String value, EdmType edmType)

プロパティ フィルター条件文字列を生成します。 指定した操作を使用してプロパティを値と比較し、指定した として書式設定されたフィルター式で使用する書式設定された文字列を作成します EdmType

Parameters:

propertyName - String比較するプロパティの名前を指定する 。
operation - String使用する比較演算子を指定する 。
value - Stringプロパティと比較する値を指定する 。
edmType - EdmType値の書式を設定する 。

Returns:

String書式設定されたフィルター条件を表す 。

generateQueryBuilder

protected UriQueryBuilder generateQueryBuilder()

内部使用のために予約されています。 テーブル クエリを UriQueryBuilder 表す オブジェクトを作成します。

Returns:

UriQueryBuilderテーブル クエリを表す オブジェクト。

Throws:

StorageException - クエリ パラメーターの追加またはエンコードでエラーが発生した場合は 。

getClazzType

public Class getClazzType()

クエリによって返されるテーブル エンティティのクラス型を取得します。

Returns:

java.lang.Classクエリのテーブル エンティティ型を表す クラスTの 。

getColumns

public String [] getColumns()

テーブル クエリで指定されたテーブル エンティティ プロパティ名の配列を取得します。 テーブル クエリで select 句でプロパティ名が指定されていない場合、テーブル内のすべてのプロパティが既定で返されます。 返すテーブル エンティティ プロパティは、プロパティ名の配列をパラメーターとして持つ メソッドまたは select(final String[] columns) メソッドのsetColumns(final String[] columns)呼び出しで指定できます。

システム プロパティ 、、、 は、 で指定されているかどうかに関係なく、テーブル サービスから自動的に TableQuery<T> 要求されることに注意してください。

Returns:

クエリで String 返されるテーブル エンティティ プロパティのプロパティ名を表す オブジェクトの配列。

getFilterString

public String getFilterString()

テーブル クエリで指定されたフィルター式を取得します。 テーブル クエリでフィルター式が指定されていない場合、テーブル内のすべてのエンティティが既定で返されます。 返されるエンティティのフィルターは、 メソッドまたは where(final String filter) メソッドのsetFilterString(final String filterString)呼び出しで指定できます。

Returns:

Stringクエリで使用されるフィルター式を表す 。

getSourceTableName

protected String getSourceTableName()

テーブル クエリで指定されたソース テーブルの名前を取得します。

Returns:

Stringクエリで使用されるソース テーブルの名前を表す 。

getTakeCount

public Integer getTakeCount()

テーブル クエリで指定されたクエリから返されるエンティティの数を取得します。 この値がテーブル クエリで指定されていない場合は、最大 1,000 エントリが返されます。 返すエンティティの数は、 メソッドまたは take(final Integer take) メソッドのsetTakeCount(final Integer takeCount)呼び出しで指定できます。

によって返される値が 1,000 を超える場合、クエリの実行時に が StorageException スローされます。

Returns:

Integer返されるテーブル クエリのエンティティの最大数を表す 。

select

public TableQuery select(final String[] columns)

テーブル クエリの実行時に返されるテーブル エンティティのプロパティの名前を定義します。 句は、サーバーから返されるテーブル プロパティを制限するために使用されるテーブル クエリでは省略可能です。 既定では、テーブル エンティティのすべてのプロパティがクエリから返されます。

システム プロパティ 、、、 は、 で指定されているかどうかに関係なく、テーブル サービスから自動的に TableQuery<T> 要求されることに注意してください。

Parameters:

columns - クエリの String 実行時に返すテーブル エンティティ プロパティのプロパティ名を指定する オブジェクトの配列。

Returns:

set を TableQuery<T> 返すテーブル エンティティ プロパティを持つインスタンスへの参照。

setClazzType

public void setClazzType(final Class clazzType)

クエリによって返されるテーブル エンティティのクラス型を設定します。 テーブル クエリを実行するには、クラス型が必要です。

これ以上特殊化された型が必要ない場合、呼び出し元はクラス型パラメーターとして を指定 TableServiceEntity できます。

Parameters:

clazzType - java.lang.Classクエリのテーブル エンティティ型を表す クラスTの 。 クラス T は、 を実装 TableEntity し、nullary コンストラクターを持つ型である必要があります。

setColumns

public void setColumns(final String[] columns)

テーブル クエリの実行時に返されるテーブル エンティティ プロパティのプロパティ名を設定します。 既定では、テーブル エンティティのすべてのプロパティがクエリから返されます。

システム プロパティ 、、、 は、 で指定されているかどうかに関係なく、テーブル サービスから自動的に TableQuery<T> 要求されることに注意してください。

Parameters:

columns - クエリの String 実行時に返すテーブル エンティティ プロパティのプロパティ名を指定する オブジェクトの配列。

setFilterString

public void setFilterString(final String filterString)

テーブル クエリで使用するフィルター式を設定します。 フィルター式は省略可能です。既定では、テーブル クエリはテーブル内のすべてのエンティティを返します。

メソッドでsetFilterString(final String filterString)使用するフィルター式は、 で定義されている比較演算子と でOperators定義QueryComparisonsされている論理演算子を使用して、オーバーロードされたgenerateFilterCondition(String propertyName, String operation, final boolean value)メソッドとcombineFilters(String filterA, String operator, String filterB)メソッドで fluent 構文を使用して作成できます。 フィルター比較の最初のオペランドはプロパティ名である必要があり、2 番目のオペランドは定数に評価される必要があることに注意してください。 PartitionKey プロパティと RowKey プロパティの値は、比較目的の型です。 たとえば、テーブル クエリで PartitionKey 値が "AccessLogs" のすべてのエンティティに対してクエリを実行するには、

テーブル クエリで使用できる値については、MSDN トピックで詳しく説明します

テーブルとエンティティのクエリを実行しますが、クエリの実行時に行われるので、値内のスペース文字を URL エンコードする必要はありません。

フィルター文字列内では、15 個以下の個別比較が許可されることに注意してください。

Parameters:

filterString - Stringクエリで使用するフィルター式を表す 。

setSourceTableName

protected void setSourceTableName(final String sourceTableName)

テーブル クエリのソース テーブルの名前を設定します。 テーブル クエリには、実行するソース テーブルが必要です。

Parameters:

sourceTableName - Stringクエリで使用するソース テーブルの名前を指定する 。

setTakeCount

public void setTakeCount(final Integer takeCount)

クエリが返すエンティティの数の上限を設定します。 この値がテーブル クエリで指定されていない場合、既定では最大 1,000 エントリが返されます。

パラメーターに指定された値が 1,000 を超える場合、クエリの実行時に が StorageException スローされます。

Parameters:

takeCount - Integer返されるテーブル クエリのエンティティの最大数を表す 。

take

public TableQuery take(final Integer take)

クエリから返されるエンティティ数の上限を定義します。 この値がテーブル クエリで指定されていない場合、既定では最大 1,000 エントリが返されます。

パラメーターに指定された値が 1,000 を超える場合、クエリの実行時に が StorageException スローされます。

Parameters:

take - Integer返されるテーブル クエリのエンティティの最大数を表す 。

Returns:

set を TableQuery<T> 返すエンティティの数を含むインスタンスへの参照。

where

public TableQuery where(final String filter)

テーブル クエリのフィルター式を定義します。 指定されたフィルター式を満たすエンティティだけが、クエリから返されます。 フィルター式の設定は任意です。テーブル クエリでフィルター式が指定されなかった場合、既定によりテーブル内のすべてのエンティティが返されます。

メソッドでwhere(final String filter)使用するフィルター式は、 で定義されている比較演算子と でOperators定義QueryComparisonsされている論理演算子を使用して、オーバーロードされたgenerateFilterCondition(String propertyName, String operation, final boolean value)メソッドとcombineFilters(String filterA, String operator, String filterB)メソッドで fluent 構文を使用して作成できます。 フィルター比較の最初のオペランドはプロパティ名である必要があり、2 番目のオペランドは定数に評価される必要があることに注意してください。 PartitionKey プロパティと RowKey プロパティの値は、比較目的の型です。 たとえば、テーブル クエリで PartitionKey 値が "AccessLogs" のすべてのエンティティに対してクエリを実行するには、

テーブル クエリで使用できる値については、MSDN トピックで詳しく説明します

テーブルとエンティティのクエリを実行しますが、クエリの実行時に行われるので、値内のスペース文字を URL エンコードする必要はありません。

フィルター文字列内では、15 個以下の個別比較が許可されることに注意してください。

Parameters:

filter - Stringテーブル クエリに適用するフィルター式を指定する 。

Returns:

set を TableQuery<T> 返すエンティティに対するフィルターを含むインスタンスへの参照。

適用対象