Reference documentation and code samples for the BigQuery Client class QueryResults.
QueryResults represent the result of a BigQuery SQL query. Read more at the Query Response API Documentation
This class should be not instantiated directly, but as a result of calling Google\Cloud\BigQuery\BigQueryClient::runQuery() or Google\Cloud\BigQuery\Job::queryResults() .
Namespace
Google \ Cloud \ BigQueryMethods
__construct
connection
Google\Cloud\BigQuery\Connection\ConnectionInterface
Represents a connection to BigQuery. This object is created by BigQueryClient, and should not be instantiated outside of this client.
jobId
string
The job's ID.
projectId
string
The project's ID.
info
array
The query result's metadata.
mapper
job
queryResultsOptions
array
Default options to be used for calls to get query results.
rows
Retrieves the rows associated with the query and merges them together with the table's schema.
Refer to the table below for a guide on how BigQuery types are mapped as they come back from the API.
PHP Type | BigQuery Data Type |
---|---|
\DateTimeInterface
|
DATETIME
|
Google\Cloud\BigQuery\Bytes | BYTES
|
Google\Cloud\BigQuery\Date | DATE
|
Google\Cloud\Core\Int64 | INTEGER
|
Google\Cloud\BigQuery\Time | TIME
|
Google\Cloud\BigQuery\Timestamp | TIMESTAMP
|
Associative Array | RECORD
|
Non-Associative Array | RECORD
(Repeated) |
float
|
FLOAT
|
int
|
INTEGER
|
string
|
STRING
|
bool
|
BOOLEAN
|
Example:
$rows = $queryResults->rows();
foreach ($rows as $row) {
echo $row['name'] . PHP_EOL;
}
options
array
Configuration options. Please note, these options will inherit the values set by either Google\Cloud\BigQuery\BigQueryClient::runQuery() or Google\Cloud\BigQuery\Job::queryResults() .
↳ maxResults
int
Maximum number of results to read per page.
↳ startIndex
int
Zero-based index of the starting row.
↳ timeoutMs
int
How long, in milliseconds, each API call will wait for query results to become available before timing out. Depending on whether the $maxRetries has been exceeded, the results will be polled again after the timeout has been reached. Defaults to 10000
milliseconds (10 seconds).
↳ maxRetries
int
The number of times to poll the Job status, until the job is complete. By default, will poll indefinitely.
↳ returnRawResults
bool
Returns the raw data types returned from BigQuery without converting their values into native PHP types or the custom type classes supported by this library.
Google\Cloud\Core\Iterator\ItemIterator
waitUntilComplete
Blocks until the query is complete.
Example:
$queryResults->waitUntilComplete();
options
array
Configuration options. Please note, these options will inherit the values set by either Google\Cloud\BigQuery\BigQueryClient::runQuery() or Google\Cloud\BigQuery\Job::queryResults() .
↳ maxResults
int
Maximum number of results to read per page.
↳ startIndex
int
Zero-based index of the starting row.
↳ timeoutMs
int
How long, in milliseconds, each API call will wait for query results to become available before timing out. Depending on whether the $maxRetries has been exceeded, the results will be polled again after the timeout has been reached. Defaults to 10000
milliseconds (10 seconds).
↳ maxRetries
int
The number of times to poll the Job status, until the job is complete. By default, will poll indefinitely.
info
array
reload
See also:
options
array
Configuration options.
↳ maxResults
int
Maximum number of results to read per page.
↳ startIndex
int
Zero-based index of the starting row.
↳ timeoutMs
int
How long to wait for the query to complete, in milliseconds. Defaults to 10000
milliseconds (10 seconds).
array
identity
Retrieves the query result's identity.
An identity provides a description of a nested resource.
Example:
echo $queryResults->identity()['projectId'];
array
isComplete
Checks the job's completeness.
Useful in combination with Google\Cloud\BigQuery\QueryResults::reload() to poll for query status.
Example:
$isComplete = $queryResults->isComplete();
while (!$isComplete) {
sleep(1); // let's wait for a moment...
$queryResults->reload();
$isComplete = $queryResults->isComplete();
}
echo 'Query complete!';
bool
job
Returns a reference to the job.
The Google\Cloud\BigQuery\Job instance is used to fetch the query results. This is especially useful when attempting to access job statistics after calling Google\Cloud\BigQuery\BigQueryClient::runQuery() .
Example:
$job = $queryResults->job();
getIterator
Google\Cloud\Core\Iterator\ItemIterator