Del via


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

# 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