Interact with your BigQuery dataset. Create a Dataset instance with or .
Package
@google-cloud/bigquery
Example
const {BigQuery} = require('@google-cloud/bigquery');
const bigquery = new BigQuery();
const dataset = bigquery.dataset('institutions');
Constructors
(constructor)(bigQuery, id, options)
constructor(bigQuery: BigQuery, id: string, options?: DatasetOptions);
Constructs a new instance of the Dataset
class
Parameters
Properties
bigQuery
location
Methods
createQueryJob(options)
createQueryJob(options: string | Query): Promise<JobResponse>;
Run a query as a job. No results are immediately returned. Instead, your callback will be executed with a Job object that you must ping for the results. See the Job documentation for explanations of how to check on the status of the job.
See for full documentation of this method.
Parameter
Name | Description |
options |
string | Query
See for full documentation of this method.
|
Returns
createQueryJob(options, callback)
createQueryJob(options: string | Query, callback: JobCallback): void;
Parameters
Returns
createQueryStream(options)
createQueryStream(options: Query | string): Duplex;
Run a query scoped to your dataset as a readable object stream.
See for full documentation of this method.
Parameter
Name | Description |
options |
Query | string
See for full documentation of this method.
|
Returns
Type | Description |
Duplex | {stream}
|
createRoutine(id, config)
createRoutine(id: string, config: RoutineMetadata): Promise<RoutineResponse>;
Parameters
Returns
Examples
const {BigQuery} = require('@google-cloud/bigquery');
const bigquery = new BigQuery();
const dataset = bigquery.dataset('my-dataset');
const id = 'my-routine';
const config = {
arguments: [{
name: 'x',
dataType: {
typeKind: 'INT64'
}
}],
definitionBody: 'x * 3',
routineType: 'SCALAR_FUNCTION',
returnType: {
typeKind: 'INT64'
}
};
dataset.createRoutine(id, config, (err, routine, apiResponse) => {
if (!err) {
// The routine was created successfully.
}
});
If the callback is omitted a Promise will be returned
const [routine, apiResponse] = await dataset.createRoutine(id, config);
createRoutine(id, config, callback)
createRoutine(id: string, config: RoutineMetadata, callback: RoutineCallback): void;
Parameters
Returns
createTable(id, options)
createTable(id: string, options: TableMetadata): Promise<TableResponse>;
Parameters
Returns
Example
const {BigQuery} = require('@google-cloud/bigquery');
const bigquery = new BigQuery();
const dataset = bigquery.dataset('institutions');
const tableId = 'institution_data';
const options = {
// From the data.gov CSV dataset (http://goo.gl/kSE7z6):
schema: 'UNITID,INSTNM,ADDR,CITY,STABBR,ZIP,FIPS,OBEREG,CHFNM,...'
};
dataset.createTable(tableId, options, (err, table, apiResponse) => {});
//-
// If the callback is omitted, we'll return a Promise.
//-
dataset.createTable(tableId, options).then((data) => {
const table = data[0];
const apiResponse = data[1];
});
createTable(id, options, callback)
createTable(id: string, options: TableMetadata, callback: TableCallback): void;
Parameters
Returns
createTable(id, callback)
createTable(id: string, callback: TableCallback): void;
Parameters
Returns
delete(options)
delete(options?: DatasetDeleteOptions): Promise<[Metadata]>;
Parameter
Returns
Type | Description |
Promise<[Metadata]> | {Promise
|
Example
const {BigQuery} = require('@google-cloud/bigquery');
const bigquery = new BigQuery();
const dataset = bigquery.dataset('institutions');
//-
// Delete the dataset, only if it does not have any tables.
//-
dataset.delete((err, apiResponse) => {});
//-
// Delete the dataset and any tables it contains.
//-
dataset.delete({ force: true }, (err, apiResponse) => {});
//-
// If the callback is omitted, we'll return a Promise.
//-
dataset.delete().then((data) => {
const apiResponse = data[0];
});
delete(options, callback)
delete(options: DatasetDeleteOptions, callback: DeleteCallback): void;
Parameters
Returns
delete(callback)
delete(callback: DeleteCallback): void;
Parameter
Returns
getModels(options)
getModels(options?: GetModelsOptions): Promise<GetModelsResponse>;
Parameter
Returns
Examples
const {BigQuery} = require('@google-cloud/bigquery');
const bigquery = new BigQuery();
const dataset = bigquery.dataset('institutions');
dataset.getModels((err, models) => {
// models is an array of `Model` objects.
});
To control how many API requests are made and page through the results manually, set autoPaginate
to false
.
function manualPaginationCallback(err, models, nextQuery, apiResponse) {
if (nextQuery) {
// More results exist.
dataset.getModels(nextQuery, manualPaginationCallback);
}
}
dataset.getModels({
autoPaginate: false
}, manualPaginationCallback);
If the callback is omitted, we'll return a Promise.
dataset.getModels().then((data) => {
const models = data[0];
});
getModels(options, callback)
getModels(options: GetModelsOptions, callback: GetModelsCallback): void;
Parameters
Returns
getModels(callback)
getModels(callback: GetModelsCallback): void;
Parameter
Returns
getModelsStream(options)
getModelsStream(options?: GetModelsOptions): ResourceStream<Model>;
Parameter
Returns
Type | Description |
ResourceStream<Model> | |
getRoutines(options)
getRoutines(options?: GetRoutinesOptions): Promise<GetRoutinesResponse>;
Parameter
Returns
Examples
const {BigQuery} = require('@google-cloud/bigquery');
const bigquery = new BigQuery();
const dataset = bigquery.dataset('institutions');
dataset.getRoutines((err, routines) => {
// routines is an array of `Routine` objects.
});
To control how many API requests are made and page through the results manually, set autoPaginate
to false
.
function manualPaginationCallback(err, routines, nextQuery, apiResponse) {
if (nextQuery) {
// More results exist.
dataset.getRoutines(nextQuery, manualPaginationCallback);
}
}
dataset.getRoutines({
autoPaginate: false
}, manualPaginationCallback);
If the callback is omitted a Promise will be returned
const [routines] = await dataset.getRoutines();
getRoutines(options, callback)
getRoutines(options: GetRoutinesOptions, callback: GetRoutinesCallback): void;
Parameters
Returns
getRoutines(callback)
getRoutines(callback: GetRoutinesCallback): void;
Parameter
Returns
getRoutinesStream(options)
getRoutinesStream(options?: GetRoutinesOptions): ResourceStream<Routine>;
Parameter
Returns
Type | Description |
ResourceStream<Routine> | |
getTables(options)
getTables(options?: GetTablesOptions): Promise<GetTablesResponse>;
Parameter
Returns
Example
const {BigQuery} = require('@google-cloud/bigquery');
const bigquery = new BigQuery();
const dataset = bigquery.dataset('institutions');
dataset.getTables((err, tables) => {
// tables is an array of `Table` objects.
});
//-
// To control how many API requests are made and page through the results
// manually, set `autoPaginate` to `false`.
//-
function manualPaginationCallback(err, tables, nextQuery, apiResponse) {
if (nextQuery) {
// More results exist.
dataset.getTables(nextQuery, manualPaginationCallback);
}
}
dataset.getTables({
autoPaginate: false
}, manualPaginationCallback);
//-
// If the callback is omitted, we'll return a Promise.
//-
dataset.getTables().then((data) => {
const tables = data[0];
});
getTables(options, callback)
getTables(options: GetTablesOptions, callback: GetTablesCallback): void;
Parameters
Returns
getTables(callback)
getTables(callback: GetTablesCallback): void;
Parameter
Returns
getTablesStream(options)
getTablesStream(options?: GetTablesOptions): ResourceStream<Table>;
Parameter
Returns
Type | Description |
ResourceStream<Table> | |
model(id)
model(id: string): Model;
Parameter
Name | Description |
id |
string
The ID of the model. {Model}
|
Returns
Example
const {BigQuery} = require('@google-cloud/bigquery');
const bigquery = new BigQuery();
const dataset = bigquery.dataset('institutions');
const model = dataset.model('my-model');
query(options)
query(options: Query): Promise<QueryRowsResponse>;
Run a query scoped to your dataset.
See for full documentation of this method.
Parameter
Name | Description |
options |
Query
See for full documentation of this method.
|
Returns
query(options)
query(options: string): Promise<QueryRowsResponse>;
Parameter
Name | Description |
options |
string
|
Returns
query(options, callback)
query(options: Query, callback: SimpleQueryRowsCallback): void;
Parameters
Returns
query(options, callback)
query(options: string, callback: SimpleQueryRowsCallback): void;
Parameters
Returns
routine(id)
routine(id: string): Routine;
Parameter
Name | Description |
id |
string
The ID of the routine.
|
Returns
Type | Description |
Routine | {Routine}
|
Example
const {BigQuery} = require('@google-cloud/bigquery');
const bigquery = new BigQuery();
const dataset = bigquery.dataset('institutions');
const routine = dataset.routine('my_routine');
table(id, options)
table(id: string, options?: TableOptions): Table;
Parameters
Name | Description |
id |
string
The ID of the table.
|
options |
TableOptions
Table options.
|
Returns
Example
const {BigQuery} = require('@google-cloud/bigquery');
const bigquery = new BigQuery();
const dataset = bigquery.dataset('institutions');
const institutions = dataset.table('institution_data');