!startswith operator

Filters a record set retrieving data that does not start a case-insensitive search string.

The following table provides a comparison of the startswith operators:

Note

The following abbreviations are used in the table below:

  • RHS = right hand side of the expression
  • LHS = left hand side of the expression
Operator Description Case-Sensitive Example (yields true)
startswith RHS is an initial subsequence of LHS No "Fabrikam" startswith "fab"
!startswith RHS isn't an initial subsequence of LHS No "Fabrikam" !startswith "kam"
startswith_cs RHS is an initial subsequence of LHS Yes "Fabrikam" startswith_cs "Fab"
!startswith_cs RHS isn't an initial subsequence of LHS Yes "Fabrikam" !startswith_cs "fab"

Note

The following abbreviations are used in the table above:

  • RHS = right hand side of the expression
  • LHS = left hand side of the expression

For further information about other operators and to determine which operator is most appropriate for your query, see datatype string operators.

Case-insensitive operators are currently supported only for ASCII-text. For non-ASCII comparison, use the tolower() function.

Performance tips

Note

Performance depends on the type of search and the structure of the data.

For faster results, use the case-sensitive version of an operator, for example, hassuffix_cs, not hassuffix.

If you're testing for the presence of a symbol or alphanumeric word that is bound by non-alphanumeric characters at the start or end of a field, for faster results use has or in.

For best practices, see Query best practices.

Syntax

T | where col !startswith (expression)

Arguments

  • T - The tabular input whose records are to be filtered.
  • col - The column to filter.
  • expression - Scalar or literal expression.

Returns

Rows in T for which the predicate is true.

Example

StormEvents
    | summarize event_count=count() by State
    | where State !startswith "i"
    | where event_count > 2000
    | project State, event_count

Output

State event_count
TEXAS 4701
KANSAS 3166
MISSOURI 2016