After creating a BigLake Iceberg table in BigQuery, you can query it using
GoogleSQL syntax, the same as if
it were a standard BigQuery table. For example, SELECT field1, field2
FROM mydataset.my_iceberg_table;.
[[["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-25 UTC."],[[["\u003cp\u003eThis document outlines how to query data stored in Iceberg BigLake tables within BigQuery.\u003c/p\u003e\n"],["\u003cp\u003eQuerying Iceberg BigLake tables requires the BigQuery Connection User, BigQuery Data Viewer, and BigQuery User roles.\u003c/p\u003e\n"],["\u003cp\u003eSpecific permissions needed include \u003ccode\u003ebigquery.connections.use\u003c/code\u003e, \u003ccode\u003ebigquery.jobs.create\u003c/code\u003e, \u003ccode\u003ebigquery.tables.get\u003c/code\u003e, \u003ccode\u003ebigquery.tables.getData\u003c/code\u003e, and optionally \u003ccode\u003ebigquery.readsessions.create\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eOnce created, Iceberg BigLake tables can be queried using standard GoogleSQL syntax, similar to querying regular BigQuery tables.\u003c/p\u003e\n"]]],[],null,["# Query Apache Iceberg data\n=========================\n\nThis document describes how to query data stored in a\n[BigLake table for Apache Iceberg in BigQuery](/bigquery/docs/iceberg-tables).\n\nRequired roles\n--------------\n\nTo query BigLake tables for Apache Iceberg in BigQuery, ensure\nthat the caller of the BigQuery API has the following roles:\n\n- BigQuery Connection User (`roles/bigquery.connectionUser`)\n- BigQuery Data Viewer (`roles/bigquery.dataViewer`)\n- BigQuery User (`roles/bigquery.user`)\n\nThe caller can be your account, a\n[Spark connection service account](/bigquery/docs/connect-to-spark#create-spark-connection),\nor a\n[Cloud resource connection service account](/bigquery/docs/create-cloud-resource-connection#create-cloud-resource-connection).\nDepending on your permissions, you can\ngrant these roles to yourself or ask your administrator\nto grant them to you. For more information about granting roles, see\n[Viewing the grantable roles on resources](/iam/docs/viewing-grantable-roles).\n\nTo see the exact permissions that are required to query\nSpark BigLake tables, expand the\n**Required permissions** section: \n\n#### Required permissions\n\n- `bigquery.connections.use`\n- `bigquery.jobs.create`\n- `bigquery.readsessions.create` (Only required if you are [reading data with the\n BigQuery Storage Read API](/bigquery/docs/reference/storage))\n- `bigquery.tables.get`\n- `bigquery.tables.getData`\n\nYou might also be able to get these permissions with [custom roles](/iam/docs/creating-custom-roles)\nor other [predefined roles](/iam/docs/understanding-roles).\n\nQuery BigLake Iceberg tables in BigQuery\n----------------------------------------\n\nAfter creating a BigLake Iceberg table in BigQuery, you can [query it using\nGoogleSQL syntax](/bigquery/docs/running-queries), the same as if\nit were a standard BigQuery table. For example, `SELECT field1, field2\nFROM mydataset.my_iceberg_table;`.\n\nWhat's next\n-----------\n\n- Learn about [using SQL in BigQuery](/bigquery/docs/introduction-sql).\n- Learn about [BigLake tables](/bigquery/docs/biglake-intro).\n- Learn about [BigQuery quotas](/bigquery/quotas)."]]