macro classfromQuery extends Annotation with StaticAnnotation
Macro annotation for a BigQuery SELECT query.
Generate case classes for a BigQuery SELECT query. Note that query must be a string
literal of the SELECT query with optional .stripMargin at the end. For example:
@BigQueryType.fromQuery("SELECT field1, field2 FROM [project:dataset.table]")
String formatting syntax can be used in query when additional args are supplied. For
example:
@BigQueryType.fromQuery("SELECT field1, field2 FROM [%s]", "table")
"$LATEST" can be used as a placeholder for table partitions. The latest common partition
available for all tables with the placeholder will be used. For example:
@BigQueryType.fromQuery(
"SELECT field1, field2 FROM [project:d1.t1_%s] JOIN [project:d2.t2_%s] USING field3",
"$LATEST", "$LATEST")
Also generate a companion object with convenience methods.
Both Legacy SQL and
Standard SQL dialects are
supported. By default the query dialect will be automatically detected. To override this
behavior, start the query string with #legacysql or #standardsql.
Macro annotation for a BigQuery SELECT query.
Generate case classes for a BigQuery SELECT query. Note that
query
must be a string literal of the SELECT query with optional.stripMargin
at the end. For example:@BigQueryType.fromQuery("SELECT field1, field2 FROM [project:dataset.table]")
String formatting syntax can be used in
query
when additionalargs
are supplied. For example:"$LATEST" can be used as a placeholder for table partitions. The latest common partition available for all tables with the placeholder will be used. For example:
Also generate a companion object with convenience methods.
Both Legacy SQL and Standard SQL dialects are supported. By default the query dialect will be automatically detected. To override this behavior, start the query string with
#legacysql
or#standardsql
.