DROP FEATURES

DROP FEATURES removes persisted feature definitions selected by explicit name, namespace, pattern, or metadata predicate.

Syntax

DROP FEATURES [IF EXISTS]
    feature_name [, feature_name ...]

DROP FEATURES [IF EXISTS]
    [LIKE pattern]
    [IN | FROM namespace [UP TO LEVEL level]]
    [WHERE boolean_expression]
    [ORDER BY expression [ASC | DESC] [, ...]]
    [LIMIT count [OFFSET offset]]

At least one selector is required. Bare DROP FEATURES; is rejected.

Selectors

  • An explicit comma-separated list targets known fully qualified names.
  • LIKE matches feature names using SQL-style % and _ wildcards.
  • IN and FROM restrict selection to a namespace. UP TO LEVEL controls descendant depth.
  • WHERE filters feature metadata using the same row shape returned by SHOW FEATURES.
  • ORDER BY and LIMIT make a broad selection deterministic and bounded.

IF EXISTS ignores names or selections that match no feature. Without it, a missing explicit target is an error.

DROP FEATURES IF EXISTS
    FM.SALES.NET_REVENUE,
    FM.SALES.GROSS_REVENUE;

FeatureQL resolves deletion order within the selected set. The statement is rejected when a feature outside that set still depends on a selected feature.

Use plural DROP FEATURES for one or more features.

For dependency-safe workflows and transactions, see Drop features .