Sdílet prostřednictvím


ROW FILTER klauzule

Platí pro: zaškrtnutí označeného ano Databricks SQL zaškrtnutí označeného ano Databricks Runtime 12.2 LTS a vyšší zaškrtnutí označeného ano pouze katalog Unity

Důležité

Tato funkce je ve verzi Public Preview.

Určuje funkci, která se použije jako filtr při každém načtení řádků z tabulky.

Filtry řádků můžete přidat, když:

Důležité

Filtr řádků se použije, jakmile se řádek načte ze zdroje dat.

Další informace o tom, jak používat filtry řádků, najdete v tématu Filtrování citlivých dat tabulky pomocí filtrů řádků a masek sloupců.

Syntaxe

ROW FILTER func_name ON ( [ column_name [, ...] ] ) } [...]

Parametry

  • func_name

    Skalární funkce definované uživatelem SQL

    Návratový typ funkce musí být BOOLEAN. Pokud funkce vrátí FALSE nebo NULL se řádek vyfiltruje.

  • column_name

    Určuje sloupce tabulky předmětu, které func_namese mají předat . Každý column_name musí být přetypován na odpovídající parametr func_name. Musíte zadat tolik sloupců, kolik vyžaduje podpis funkce. Všimněte si, že tato funkce podporuje předávání nulových vstupních sloupců, v takovém případě musí funkce SQL UDF přijmout nulové parametry a vrátit logický výsledek nezávislý na libovolné hodnotě vstupních řádků.

Příklady

Další příklady najdete v části Filtrování citlivých dat tabulky pomocí filtrů řádků a masek sloupců.

-- Create a table with a row filter column
> CREATE FUNCTION filter_emps(dept STRING) RETURN is_member(dept);
> CREATE TABLE employees(emp_name STRING, dept STRING) WITH ROW FILTER filter_emps ON (dept);
> INSERT INTO employees('Jones', 'Engineering'), ('Smith', 'Sales');

-- As a member of engineering
> SELECT * FROM employees;
  Jones Engineering

-- As a member of sales
> SELECT * FROM employees;
  Smith Sales