Class QueryParameterValue (2.45.0)

public abstract class QueryParameterValue implements Serializable

A value for a QueryParameter along with its type.

A static factory method is provided for each of the possible types (e.g. #int64(Long) for StandardSQLTypeName.INT64). Alternatively, an instance can be constructed by calling #of(Object, Class) with the value and a Class object, which will use these mappings:

  • Boolean: StandardSQLTypeName.BOOL
  • String: StandardSQLTypeName.STRING
  • Integer: StandardSQLTypeName.INT64
  • Long: StandardSQLTypeName.INT64
  • Double: StandardSQLTypeName.FLOAT64
  • Float: StandardSQLTypeName.FLOAT64
  • BigDecimal: StandardSQLTypeName.NUMERIC
  • BigNumeric: StandardSQLTypeName.BIGNUMERIC
  • JSON: StandardSQLTypeName.JSON
  • INTERVAL: StandardSQLTypeName.INTERVAL

No other types are supported through that entry point. The other types can be created by calling #of(Object, StandardSQLTypeName) with the value and a particular StandardSQLTypeName enum value.

Struct parameters are currently not supported.

Inheritance

java.lang.Object > QueryParameterValue

Implements

Serializable

Static Methods

<T>array(T[] array, StandardSQLTypeName type)

public static QueryParameterValue <T>array(T[] array, StandardSQLTypeName type)

Creates a QueryParameterValue object with a type of ARRAY the given array element type.

Parameters
Name Description
array T[]
type StandardSQLTypeName
Returns
Type Description
QueryParameterValue

<T>array(T[] array, Class<T> clazz)

public static QueryParameterValue <T>array(T[] array, Class<T> clazz)

Creates a QueryParameterValue object with a type of ARRAY, and an array element type based on the given class.

Parameters
Name Description
array T[]
clazz Class<T>
Returns
Type Description
QueryParameterValue

<T>of(T value, StandardSQLTypeName type)

public static QueryParameterValue <T>of(T value, StandardSQLTypeName type)

Creates a QueryParameterValue object with the given value and type.

Parameters
Name Description
value T
type StandardSQLTypeName
Returns
Type Description
QueryParameterValue

<T>of(T value, Class<T> type)

public static QueryParameterValue <T>of(T value, Class<T> type)

Creates a QueryParameterValue object with the given value and type. Note: this does not support BigNumeric

Parameters
Name Description
value T
type Class<T>
Returns
Type Description
QueryParameterValue

bigNumeric(BigDecimal value)

public static QueryParameterValue bigNumeric(BigDecimal value)

Creates a QueryParameterValue object with a type of BIGNUMERIC.

Parameter
Name Description
value BigDecimal
Returns
Type Description
QueryParameterValue

bool(Boolean value)

public static QueryParameterValue bool(Boolean value)

Creates a QueryParameterValue object with a type of BOOL.

Parameter
Name Description
value Boolean
Returns
Type Description
QueryParameterValue

bytes(byte[] value)

public static QueryParameterValue bytes(byte[] value)

Creates a QueryParameterValue object with a type of BYTES.

Parameter
Name Description
value byte[]
Returns
Type Description
QueryParameterValue

date(String value)

public static QueryParameterValue date(String value)

Creates a QueryParameterValue object with a type of DATE. Must be in the format "yyyy-MM-dd", e.g. "2014-08-19".

Parameter
Name Description
value String
Returns
Type Description
QueryParameterValue

dateTime(String value)

public static QueryParameterValue dateTime(String value)

Creates a QueryParameterValue object with a type of DATETIME. Must be in the format "yyyy-MM-dd HH:mm:ss.SSSSSS", e.g. "2014-08-19 12:41:35.220000".

Parameter
Name Description
value String
Returns
Type Description
QueryParameterValue

float64(Double value)

public static QueryParameterValue float64(Double value)

Creates a QueryParameterValue object with a type of FLOAT64.

Parameter
Name Description
value Double
Returns
Type Description
QueryParameterValue

float64(Float value)

public static QueryParameterValue float64(Float value)

Creates a QueryParameterValue object with a type of FLOAT64.

Parameter
Name Description
value Float
Returns
Type Description
QueryParameterValue

geography(String value)

public static QueryParameterValue geography(String value)

Creates a QueryParameterValue object with a type of GEOGRAPHY.

Parameter
Name Description
value String
Returns
Type Description
QueryParameterValue

int64(Integer value)

public static QueryParameterValue int64(Integer value)

Creates a QueryParameterValue object with a type of INT64.

Parameter
Name Description
value Integer
Returns
Type Description
QueryParameterValue

int64(Long value)

public static QueryParameterValue int64(Long value)

Creates a QueryParameterValue object with a type of INT64.

Parameter
Name Description
value Long
Returns
Type Description
QueryParameterValue

interval(String value)

public static QueryParameterValue interval(String value)

Creates a QueryParameterValue object with a type of INTERVAL. Must be in the canonical format "[sign]Y-M [sign]D [sign]H:M:S[.F]", e.g. "123-7 -19 0:24:12.000006" or ISO 8601 duration format, e.g. "P123Y7M-19DT0H24M12.000006S"

Parameter
Name Description
value String
Returns
Type Description
QueryParameterValue

interval(PeriodDuration value)

public static QueryParameterValue interval(PeriodDuration value)

Creates a QueryParameterValue object with a type of INTERVAL. This method is obsolete. Use #interval(String) instead.

Parameter
Name Description
value org.threeten.extra.PeriodDuration
Returns
Type Description
QueryParameterValue

json(JsonObject value)

public static QueryParameterValue json(JsonObject value)

Creates a QueryParameterValue object with a type of JSON. Currently, this is only supported in INSERT, not in query as a filter

Parameter
Name Description
value com.google.gson.JsonObject
Returns
Type Description
QueryParameterValue

json(String value)

public static QueryParameterValue json(String value)

Creates a QueryParameterValue object with a type of JSON. Currently, this is only supported in INSERT, not in query as a filter

Parameter
Name Description
value String
Returns
Type Description
QueryParameterValue

newBuilder()

public static QueryParameterValue.Builder newBuilder()

Returns a builder for the QueryParameterValue object.

Returns
Type Description
QueryParameterValue.Builder

numeric(BigDecimal value)

public static QueryParameterValue numeric(BigDecimal value)

Creates a QueryParameterValue object with a type of NUMERIC.

Parameter
Name Description
value BigDecimal
Returns
Type Description
QueryParameterValue

range(Range value)

public static QueryParameterValue range(Range value)

Creates a QueryParameterValue object with a type of RANGE.

Parameter
Name Description
value Range
Returns
Type Description
QueryParameterValue

string(String value)

public static QueryParameterValue string(String value)

Creates a QueryParameterValue object with a type of STRING.

Parameter
Name Description
value String
Returns
Type Description
QueryParameterValue

struct(Map<String,QueryParameterValue> struct)

public static QueryParameterValue struct(Map<String,QueryParameterValue> struct)

Creates a map with QueryParameterValue object and a type of STRUCT the given struct element type.

Parameter
Name Description
struct Map<String,QueryParameterValue>
Returns
Type Description
QueryParameterValue

time(String value)

public static QueryParameterValue time(String value)

Creates a QueryParameterValue object with a type of TIME. Must be in the format "HH:mm:ss.SSSSSS", e.g. "12:41:35.220000".

Parameter
Name Description
value String
Returns
Type Description
QueryParameterValue

timestamp(Long value)

public static QueryParameterValue timestamp(Long value)

Creates a QueryParameterValue object with a type of TIMESTAMP.

Parameter
Name Description
value Long

Microseconds since epoch, e.g. 1733945416000000 corresponds to 2024-12-11 19:30:16.929Z

Returns
Type Description
QueryParameterValue

timestamp(String value)

public static QueryParameterValue timestamp(String value)

Creates a QueryParameterValue object with a type of TIMESTAMP. Must be in the format "yyyy-MM-dd HH:mm:ss.SSSSSSZZ", e.g. "2014-08-19 12:41:35.220000+00:00".

Parameter
Name Description
value String
Returns
Type Description
QueryParameterValue

Methods

getArrayType()

public abstract StandardSQLTypeName getArrayType()

Returns the data type of the array elements.

Returns
Type Description
StandardSQLTypeName

getArrayValues()

public List<QueryParameterValue> getArrayValues()

Returns the array values of this parameter. The returned list, if not null, is immutable.

Returns
Type Description
List<QueryParameterValue>

getRangeValues()

public Range getRangeValues()

Returns the struct values of this parameter. The returned map, if not null, is immutable.

Returns
Type Description
Range

getStructTypes()

public Map<String,QueryParameterValue> getStructTypes()

Returns the data type of the struct elements.

Returns
Type Description
Map<String,QueryParameterValue>

getStructValues()

public Map<String,QueryParameterValue> getStructValues()

Returns the struct values of this parameter. The returned map, if not null, is immutable.

Returns
Type Description
Map<String,QueryParameterValue>

getType()

public abstract StandardSQLTypeName getType()

Returns the data type of this parameter.

Returns
Type Description
StandardSQLTypeName

getValue()

public abstract String getValue()

Returns the value of this parameter.

Returns
Type Description
String

toBuilder()

public abstract QueryParameterValue.Builder toBuilder()

Returns a builder for a QueryParameterValue object with given value.

Returns
Type Description
QueryParameterValue.Builder