snowflake.snowpark.Table.delete¶
- Table.delete(condition: Optional[Column] = None, source: Optional[DataFrame] = None, *, statement_params: Optional[Dict[str, str]] = None, block: bool = True, _emit_ast: bool = True) DeleteResult[source]¶
- Table.delete(condition: Optional[Column] = None, source: Optional[DataFrame] = None, *, statement_params: Optional[Dict[str, str]] = None, block: bool = False, _emit_ast: bool = True) AsyncJob
Deletes rows in a Table and returns a
DeleteResult, representing the number of rows deleted.- Parameters:
condition – An optional
Columnobject representing the specified condition. It must be provided ifsourceis provided.source – An optional
DataFramethat is included incondition. It can also be anotherTable.statement_params – Dictionary of statement level parameters to be set while executing this action.
block – A bool value indicating whether this function will wait until the result is available. When it is
False, this function executes the underlying queries of the dataframe asynchronously and returns anAsyncJob.
Examples:
>>> target_df = session.create_dataframe([(1, 1),(1, 2),(2, 1),(2, 2),(3, 1),(3, 2)], schema=["a", "b"]) >>> target_df.write.save_as_table("my_table", mode="overwrite", table_type="temporary") >>> t = session.table("my_table") >>> # delete all rows in a table >>> t.delete() DeleteResult(rows_deleted=6) >>> t.collect() [] >>> # delete all rows where column "a" has value 1 >>> target_df.write.save_as_table("my_table", mode="overwrite", table_type="temporary") >>> t.delete(t["a"] == 1) DeleteResult(rows_deleted=2) >>> t.sort("a", "b").collect() [Row(A=2, B=1), Row(A=2, B=2), Row(A=3, B=1), Row(A=3, B=2)] >>> # delete all rows in this table where column "a" in this >>> # table is equal to column "a" in another dataframe >>> target_df.write.save_as_table("my_table", mode="overwrite", table_type="temporary") >>> source_df = session.create_dataframe([2, 3, 4, 5], schema=["a"]) >>> t.delete(t["a"] == source_df.a, source_df) DeleteResult(rows_deleted=4) >>> t.sort("a", "b").collect() [Row(A=1, B=1), Row(A=1, B=2)]