# LIKE, NOT LIKE

The `LIKE` and `NOT LIKE` operators are useful for matching patterns containing simple wildcards.

The `%` character appearing in a pattern matches any string and the `_` character matches a single character. For example:

```sql
CREATE TABLE like_s (b int, t varchar(20));
INSERT INTO like_s VALUES(0, 'red'), (1, 'blue');
```

```sql
SELECT * FROM like_s WHERE t LIKE 'r_d';

```

```output

+------+------+
| b    | t    |
+------+------+
|    0 | red  |
+------+------+

```

```sql
SELECT * FROM like_s WHERE t NOT LIKE 'r%';

```

```output

+------+------+
| b    | t    |
+------+------+
|    1 | blue |
+------+------+

```

You can use the backslash character `\` as an escape character with a `LIKE` operator so that SingleStore interprets the wildcard character as a literal character. For example:

```sql
SELECT "foo_" LIKE "foo\_";

```

```output

+---------------------+
| "foo_" LIKE "foo\_" |
+---------------------+
|                   1 |
+---------------------+

```

> **⚠️ Warning**: ## Implicit CollationWhen `character_set_server` is set to `utf8`, string literals with characters using 4-byte encoding are implicitly assigned binary collation and processed as a sequence of bytes rather than characters. This implicit conversion to binary collation causes string functions to return unexpected results. To avoid using implicit binary collation, either use explicit type casting or use database columns defined with the `utf8mb4` character set. For more information, refer to [Implicit Collation in Special Cases](https://docs.singlestore.com/db/v9.1/reference/sql-reference/character-encoding/special-cases.md).

***

Modified at: February 28, 2023

Source: [/db/v9.1/reference/sql-reference/comparison-operators-and-functions/like-not-like/](https://docs.singlestore.com/db/v9.1/reference/sql-reference/comparison-operators-and-functions/like-not-like/)

(An index of the documentation is available at /llms.txt)
