polars.SQLContext.unregister#
- SQLContext.unregister(names: str | Collection[str]) Self [source]#
Unregister one or more eager/lazy frames by name.
- Parameters:
- names
Names of the tables to unregister.
See also
Notes
You can also control table registration lifetime by using
SQLContext
as a context manager; this can often be more useful when such control is wanted:>>> df0 = pl.DataFrame({"colx": [0, 1, 2]}) >>> df1 = pl.DataFrame({"colx": [1, 2, 3]}) >>> df2 = pl.DataFrame({"colx": [2, 3, 4]})
Frames registered in-scope are automatically unregistered on scope-exit. Note that frames registered on construction will persist through subsequent scopes.
>>> # register one frame at construction time, and the other two in-scope >>> with pl.SQLContext(tbl0=df0) as ctx: ... ctx.register_many(tbl1=df1, tbl2=df2).tables() ... ['tbl0', 'tbl1', 'tbl2']
After scope exit, none of the tables registered in-scope remain:
>>> ctx.tables() ['tbl0']
Examples
>>> df0 = pl.DataFrame({"ints": [9, 8, 7, 6, 5]}) >>> lf1 = pl.LazyFrame({"text": ["a", "b", "c"]}) >>> lf2 = pl.LazyFrame({"misc": ["testing1234"]})
Register with a SQLContext object:
>>> ctx = pl.SQLContext(test1=df0, test2=lf1, test3=lf2) >>> ctx.tables() ['test1', 'test2', 'test3']
Unregister one or more of the tables:
>>> ctx.unregister(["test1", "test3"]).tables() ['test2'] >>> ctx.unregister("test2").tables() []