Skip to main content

tableExists

Check if the table or view with the specified name exists. This can either be a temporary view or a table/view.

Syntax

tableExists(tableName: str, dbName: str = None)

Parameters

Parameter

Type

Description

tableName

str

Name of the table to check existence. If no database is specified, first try to treat tableName as a multi-layer-namespace identifier, then try tableName as a normal table name in the current database if necessary. Can be qualified with catalog name when dbName is None.

dbName

str, optional

Name of the database to check table existence in.

Returns

bool

Indicating whether the table/view exists.

Examples

Python
# Check if a table is defined or not.
spark.catalog.tableExists("unexisting_table")
# False
_ = spark.sql("DROP TABLE IF EXISTS tbl1")
_ = spark.sql("CREATE TABLE tbl1 (name STRING, age INT) USING parquet")
spark.catalog.tableExists("tbl1")
# True

# Using the fully qualified names for tables.
spark.catalog.tableExists("default.tbl1")
# True
spark.catalog.tableExists("spark_catalog.default.tbl1")
# True
spark.catalog.tableExists("tbl1", "default")
# True
_ = spark.sql("DROP TABLE tbl1")

# Check if views exist.
spark.catalog.tableExists("view1")
# False
_ = spark.sql("CREATE VIEW view1 AS SELECT 1")
spark.catalog.tableExists("view1")
# True

# Check if temporary views exist.
_ = spark.sql("CREATE TEMPORARY VIEW view1 AS SELECT 1")
spark.catalog.tableExists("view1")
# True
df = spark.sql("DROP VIEW view1")
spark.catalog.tableExists("view1")
# False