Stay organized with collections Save and categorize content based on your preferences.
Reference documentation and code samples for the BigQuery Client class BigQueryClient.
Google Cloud BigQuery allows you to create, manage, share and query data.
Find more information at the Google Cloud BigQuery Docs.
Example:
use Google\Cloud\BigQuery\BigQueryClient;
$bigQuery = new BigQueryClient();
NamespaceGoogle \ Cloud \ BigQuery Methods __construct
Create a BigQuery client.
Parameters Name Descriptionconfig
array
Configuration options.
↳ apiEndpoint
string
The hostname with optional port to use in place of the default service endpoint. Example: foobar.com
or foobar.com:1234
.
↳ projectId
string
The project ID from the Google Developer's Console.
↳ authCache
CacheItemPoolInterface
A cache for storing access tokens. Defaults to a simple in memory implementation.
↳ authCacheOptions
array
Cache configuration options.
↳ authHttpHandler
callable
A handler used to deliver Psr7 requests specifically for authentication.
↳ credentialsFetcher
FetchAuthTokenInterface
A credentials fetcher instance.
↳ httpHandler
callable
A handler used to deliver Psr7 requests. Only valid for requests sent over REST.
↳ keyFile
array
The contents of the service account credentials .json file retrieved from the Google Developer's Console. Ex: json_decode(file_get_contents($path), true)
.
↳ keyFilePath
string
The full path to your service account credentials .json file retrieved from the Google Developers Console.
↳ requestTimeout
float
Seconds to wait before timing out the request. Defaults to 0
with REST and 60
with gRPC.
↳ retries
int
Number of retries for a failed request. Defaults to 3
.
↳ scopes
array
Scopes to be used for the request.
↳ quotaProject
string
Specifies a user project to bill for access charges associated with the request.
↳ returnInt64AsObject
bool
If true, 64 bit integers will be returned as a Google\Cloud\Core\Int64 object for 32 bit platform compatibility. Defaults to false.
↳ location
string
If provided, determines the default geographic location used when creating datasets and managing jobs. Please note: This is only required for jobs started outside of the US and EU regions. Also, if location metadata has already been fetched over the network it will take precedent over this setting (by calling Table::reload(), for example).
queryReturns a BigQuery job configuration.
The job configuration is passed to either BigQueryClient::runQuery() or BigQueryClient::startQuery(). A configuration can be built using fluent setters or by providing a full set of options at once.
Unless otherwise specified, all configuration options will default based on the query job configuration except for configuration.query.useLegacySql
, which defaults to false
in this client.
Example:
$queryJobConfig = $bigQuery->query(
'SELECT commit FROM `bigquery-public-data.github_repos.commits` LIMIT 100'
);
// Set create disposition using fluent setters.
$queryJobConfig = $bigQuery->query(
'SELECT commit FROM `bigquery-public-data.github_repos.commits` LIMIT 100'
)->createDisposition('CREATE_NEVER');
// This is equivalent to the above example, using array configuration
// instead of fluent setters.
$queryJobConfig = $bigQuery->query(
'SELECT commit FROM `bigquery-public-data.github_repos.commits` LIMIT 100',
[
'configuration' => [
'query' => [
'createDisposition' => 'CREATE_NEVER'
]
]
]
);
// Set a region to run the job in.
$queryJobConfig = $bigQuery->query(
'SELECT name FROM `my_project.users_dataset.users` LIMIT 100'
)->location('asia-northeast1');
Parameters Name Description query
string
A BigQuery SQL query.
options
array
Configuration options.
↳ configuration
array
Job configuration. Please see the API documentation for the available options.
Properties Name Descriptionquery
array
Query job configuration. Please see the documentation for the available options.
queryConfigReturns a BigQuery job configuration.
The job configuration is passed to either BigQueryClient::runQuery() or BigQueryClient::startQuery(). A configuration can be built using fluent setters or by providing a full set of options at once.
Unless otherwise specified, all configuration options will default based on the query job configuration except for configuration.query.useLegacySql
, which defaults to false
in this client.
As this method is an alias, please see BigQueryClient::query() for usage examples.
Parameters Name Descriptionquery
string
A BigQuery SQL query.
options
array
Configuration options.
↳ configuration
array
Job configuration. Please see the API documentation for the available options.
Properties Name Descriptionquery
array
Query job configuration. Please see the documentation for the available options.
runQuery Parameters Name Descriptionquery
QueryJobConfiguration
A BigQuery SQL query configuration.
options
array
Configuration options.
↳ maxResults
int
The maximum number of rows to return per page of results. Setting this flag to a small value such as 1000 and then paging through results might improve reliability when the query result set is large.
↳ 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. Default is false.
↳ formatOptions.useInt64Timestamp
boolean
Optional. Output timestamp as usec int64. Default is false.
startQuery Parameters Name Descriptionquery
QueryJobConfiguration
A BigQuery SQL query configuration.
options
array
[optional] Configuration options.
Returns Type DescriptionJob
job
Lazily instantiates a job.
There are no network requests made at this point. To see the operations that can be performed on a job please see Job.
Example:
$job = $bigQuery->job('myJobId');
Parameters Name Description id
string
The id of the already run or running job to request.
options
array
Configuration options.
↳ location
string
The geographic location of the job. Required for jobs started outside of the US and EU regions. Defaults to a location specified in the client configuration.
Returns Type DescriptionJob
jobs Parameters Name Description options
array
Configuration options.
↳ allUsers
bool
Whether to display jobs owned by all users in the project. Defaults to false
.
↳ maxResults
int
Maximum number of results to return per page.
↳ resultLimit
int
Limit the number of results returned in total. Defaults to 0
(return all results).
↳ pageToken
string
A previously-returned page token used to resume the loading of results from a specific point.
↳ stateFilter
string
Filter for job state. Maybe be either done
, pending
, or running
.
↳ maxCreationTime
int
Milliseconds since the POSIX epoch. If set, only jobs created before or at this timestamp are returned.
↳ minCreationTime
int
Milliseconds since the POSIX epoch. If set, only jobs created after or at this timestamp are returned.
↳ parentJobId
string
If set, show only child jobs of the specified parent. Otherwise, show all top-level jobs.
datasetLazily instantiates a dataset.
There are no network requests made at this point. To see the operations that can be performed on a dataset please see Dataset.
If the dataset is owned by a different project than the project used to authenticate the client, provide the project ID as the second argument.
Example:
$dataset = $bigQuery->dataset('myDatasetId');
// Reference a dataset from other project.
$dataset = $bigQuery->dataset('samples', 'bigquery-public-data');
Parameters Name Description id
string
The id of the dataset to request.
projectId
string|null
The id of the project. Defaults to current project id.
datasets Parameters Name Descriptionoptions
array
Configuration options.
↳ all
bool
Whether to list all datasets, including hidden ones. Defaults to false
.
↳ maxResults
int
Maximum number of results to return per page.
↳ resultLimit
int
Limit the number of results returned in total. Defaults to 0
(return all results).
↳ pageToken
string
A previously-returned page token used to resume the loading of results from a specific point.
↳ filter
string
An expression for filtering the results of the request by label. The syntax is "labels.
createDataset Parameters Name Descriptionid
string
The id of the dataset to create.
options
array
Configuration options.
↳ metadata
array
The available options for metadata are outlined at the Dataset Resource API docs
runJob Parameters Name Descriptionconfig
JobConfigurationInterface
The job configuration.
options
array
Configuration options.
↳ maxRetries
int
The number of times to retry, checking if the job has completed. Defaults to 100
.
Job
startJob Parameters Name Description config
JobConfigurationInterface
The job configuration.
options
array
[optional] Configuration options.
Returns Type DescriptionJob
bytes
Create a Bytes object.
Example:
$bytes = $bigQuery->bytes('hello world');
Parameter Name Description value
string|resource|Psr\Http\Message\StreamInterface
The bytes value.
Returns Type DescriptionBytes
date
Create a Date object.
Example:
$date = $bigQuery->date(new \DateTime('1995-02-04'));
Parameter Name Description value
DateTimeInterface
The date value.
Returns Type DescriptionDate
int64
Create an Int64 object. This can be used to work with 64 bit integers as a string value while on a 32 bit platform.
Example:
$int64 = $bigQuery->int64('9223372036854775807');
Parameter Name Description value
string
The 64 bit integer value in string format.
timeCreate a Time object.
Example:
$time = $bigQuery->time(new \DateTime('12:15:00.482172'));
Parameter Name Description value
DateTimeInterface
The time value.
Returns Type DescriptionTime
timestamp
Create a Timestamp object.
Example:
$timestamp = $bigQuery->timestamp(new \DateTime('2003-02-05 11:15:02.421827Z'));
Parameter Name Description value
DateTimeInterface
The timestamp value.
numericCreate a Numeric object.
Numeric represents a value with a data type of Numeric.
It supports a fixed 38 decimal digits of precision and 9 decimal digits of scale, and values are in the range of -99999999999999999999999999999.999999999 to 99999999999999999999999999999.999999999.
Example:
$numeric = $bigQuery->numeric('99999999999999999999999999999999999999.999999999');
Parameter Name Description value
string|int|float
The Numeric value.
Returns Type Descriptionnumeric
bigNumeric
Create a BigNumeric object.
Numeric represents a value with a data type of BIGNUMERIC.
It supports 76.76 (the 77th digit is partial) decimal digits of precision and 38 decimal digits of scale. Values are in the range of -5.7896044618658097711785492504343953926634992332820282019728792003956564819968E+38 to 5.7896044618658097711785492504343953926634992332820282019728792003956564819967E+38.
Example:
$bigNumeric = $bigQuery->bigNumeric('999999999999999999999999999999999999999999999.99999999999999');
Parameter Name Description value
string|int|float
The Numeric value.
geographyCreate a Geography object.
Example:
$geography = $bigQuery->geography('POINT(10 20)');
Parameter Name Description value
string
The geography data in WKT format.
jsonCreate a BigQuery Json object.
Json represents a value with a data type of JSON
Example:
use Google\Cloud\BigQuery\BigQueryClient;
$bigQuery = new BigQueryClient();
$json = $bigQuery->json('{"key":"value"}');
Parameter Name Description value
string|null
The JSON string value.
Returns Type DescriptionJson
getServiceAccount
Get a service account for the KMS integration.
Example:
$serviceAccount = $bigQuery->getServiceAccount();
Parameter Name Description options
array
[optional] Configuration options.
Returns Type Descriptionstring
copy Parameters Name Description options
array
Configuration options.
↳ configuration
array
Job configuration. Please see the API documentation for the available options.
Properties Name Descriptioncopy
array
Copy job configuration. Please see the documentation for the available options.
Parameters Name Descriptionoptions
array
Configuration options.
↳ configuration
array
Job configuration. Please see the API documentation for the available options.
Properties Name Descriptionextract
array
Extract job configuration. Please see the documentation for the available options.
load Parameters Name Descriptionoptions
array
Configuration options.
↳ configuration
array
Job configuration. Please see the API documentation for the available options.
Properties Name Descriptionload
array
Load job configuration. Please see the documentation for the available options.
Constants VERSION MAX_DELAY_MICROSECONDS SCOPEValue: 'https://www.googleapis.com/auth/bigquery'
INSERT_SCOPE
Value: 'https://www.googleapis.com/auth/bigquery.insertdata'
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2025-08-07 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-07 UTC."],[],[]]
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4