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
Parameters | |
---|---|
Name | Description |
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 |
Google\Cloud\BigQuery\ValueMapper
Maps values between PHP and BigQuery. |
job |
Google\Cloud\BigQuery\Job
The job from which the query results originated. |
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;
}
Parameters | |
---|---|
Name | Description |
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 |
↳ 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. |
Returns | |
---|---|
Type | Description |
Google\Cloud\Core\Iterator\ItemIterator |
waitUntilComplete
Blocks until the query is complete.
Example:
$queryResults->waitUntilComplete();
Parameters | |
---|---|
Name | Description |
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 |
↳ maxRetries |
int
The number of times to poll the Job status, until the job is complete. By default, will poll indefinitely. |
info
Returns | |
---|---|
Type | Description |
array |
reload
See also:
Parameters | |
---|---|
Name | Description |
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 |
Returns | |
---|---|
Type | Description |
array |
identity
Retrieves the query result's identity.
An identity provides a description of a nested resource.
Example:
echo $queryResults->identity()['projectId'];
Returns | |
---|---|
Type | Description |
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!';
Returns | |
---|---|
Type | Description |
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();
Returns | |
---|---|
Type | Description |
Google\Cloud\BigQuery\Job |
getIterator
Returns | |
---|---|
Type | Description |
Google\Cloud\Core\Iterator\ItemIterator |