# ConditionType

Location: [gRPC API](https://developer.m-files.com/APIs/gRPC-API/index.md) > [Reference](https://developer.m-files.com/APIs/gRPC-API/Reference/index.md) > [Enums](https://developer.m-files.com/APIs/gRPC-API/Reference/Enums/index.md)

HTML version: https://developer.m-files.com/APIs/gRPC-API/Reference/Enums/MFiles.ConditionType/

Condition types enumeration.

Which operators work depends on the expression and the value type. For example, the any-field
expression (full-text search) supports only `CONDITION_TYPE_CONTAINS`. An unsupported
combination fails with "Invalid search condition."

- **Full name:** `MFiles.ConditionType`
- **Proto file:** [`mfiles/enums.proto`](https://developer.m-files.com/APIs/gRPC-API/downloads/proto/mfiles/enums.proto)

<a id="values"></a>

## Values

| Name | Number | Description |
|---|---|---|
| <a id="v-CONDITION_TYPE_UNINITIALIZED"></a>`CONDITION_TYPE_UNINITIALIZED` | 0 | Uninitialized. |
| <a id="v-CONDITION_TYPE_EQUAL"></a>`CONDITION_TYPE_EQUAL` | 1 | Must be equal to the value. With a multi-select lookup value, matches if the object has any of the listed items. With a value whose `is_null_value` is true, matches objects whose property is empty. |
| <a id="v-CONDITION_TYPE_NOT_EQUAL"></a>`CONDITION_TYPE_NOT_EQUAL` | 2 | Must be not equal to. |
| <a id="v-CONDITION_TYPE_GREATER_THAN"></a>`CONDITION_TYPE_GREATER_THAN` | 3 | Must be greater than (>). |
| <a id="v-CONDITION_TYPE_LESS_THAN"></a>`CONDITION_TYPE_LESS_THAN` | 4 | Must be less than (<). |
| <a id="v-CONDITION_TYPE_GREATER_THAN_OR_EQUAL"></a>`CONDITION_TYPE_GREATER_THAN_OR_EQUAL` | 5 | Must be greater than or equal to (>=). |
| <a id="v-CONDITION_TYPE_LESS_THAN_OR_EQUAL"></a>`CONDITION_TYPE_LESS_THAN_OR_EQUAL` | 6 | Must be less than or equal to (<=). |
| <a id="v-CONDITION_TYPE_CONTAINS"></a>`CONDITION_TYPE_CONTAINS` | 7 | Contains the given text (similar to LIKE '%xyz%'). The operator of a full-text (any-field) condition. |
| <a id="v-CONDITION_TYPE_DOES_NOT_CONTAIN"></a>`CONDITION_TYPE_DOES_NOT_CONTAIN` | 8 | Does not contain the given text string (similar to NOT LIKE '%xyz%'). |
| <a id="v-CONDITION_TYPE_STARTS_WITH"></a>`CONDITION_TYPE_STARTS_WITH` | 9 | Starts with the given text string (similar to LIKE 'xyz%'). |
| <a id="v-CONDITION_TYPE_DOES_NOT_START_WITH"></a>`CONDITION_TYPE_DOES_NOT_START_WITH` | 10 | Does not start with the given text string (similar to NOT LIKE 'xyz%'). |
| <a id="v-CONDITION_TYPE_MATCHES_WILDCARD_PATTERN"></a>`CONDITION_TYPE_MATCHES_WILDCARD_PATTERN` | 11 | Matches the given DOS-style wildcard pattern (such as '*.txt'). |
| <a id="v-CONDITION_TYPE_DOES_NOT_MATCH_WILDCARD_PATTERN"></a>`CONDITION_TYPE_DOES_NOT_MATCH_WILDCARD_PATTERN` | 12 | Does not match the given DOS-style wildcard pattern (such as '*.txt'). |
| <a id="v-CONDITION_TYPE_IS_MISSING"></a>`CONDITION_TYPE_IS_MISSING` | 13 | Is missing. Rejected for property value conditions; to find an empty property, use `CONDITION_TYPE_EQUAL` with an unset value. |
| <a id="v-CONDITION_TYPE_IS_NOT_MISSING"></a>`CONDITION_TYPE_IS_NOT_MISSING` | 14 | Is not missing? |
| <a id="v-CONDITION_TYPE_STARTS_WITH_AT_WORD_BOUNDARY"></a>`CONDITION_TYPE_STARTS_WITH_AT_WORD_BOUNDARY` | 15 | Starts with the given text string at a word boundary (similar to LIKE 'xyz%', but evaluated at each word beginning). |
| <a id="v-CONDITION_TYPE_CONTAINS_ANY_BITWISE"></a>`CONDITION_TYPE_CONTAINS_ANY_BITWISE` | 16 | Contains any of the bits of the given number. Treats its operands as a vector of bits rather than a single number. |
| <a id="v-CONDITION_TYPE_DOES_NOT_CONTAIN_ANY_BITWISE"></a>`CONDITION_TYPE_DOES_NOT_CONTAIN_ANY_BITWISE` | 17 | Does not contain any of the bits of the given number. Treats its operands as a vector of bits rather than a single number. |
| <a id="v-CONDITION_TYPE_MATCHES_ALL"></a>`CONDITION_TYPE_MATCHES_ALL` | 18 | Full-text search matching all search terms. Not for the any-field condition, which rejects it: use `CONDITION_TYPE_CONTAINS` with `FTSFLAGS.search_all_words` instead. |
| <a id="v-CONDITION_TYPE_MATCHES_ANY"></a>`CONDITION_TYPE_MATCHES_ANY` | 19 | Full-text search matching any search term. Not for the any-field condition, which rejects it: use `CONDITION_TYPE_CONTAINS` with `FTSFLAGS.search_any_words` instead. |
| <a id="v-CONDITION_TYPE_MATCHES_BOOLEAN"></a>`CONDITION_TYPE_MATCHES_BOOLEAN` | 20 | Full-text search matching a Boolean statement. |

<a id="used-in-fields"></a>

## Used in fields

- [`SearchCondition.type`](https://developer.m-files.com/APIs/gRPC-API/Reference/Messages/MFiles.SearchCondition/index.md#f-type): The comparison operator.
