# INSTR

Returns the first position of the given search string.

## Syntax

```sql
INSTR (str, searchstr)

```

## Arguments

* `str`: any string or binary object
* `searchstr`: string to search for

> **📝 Note**: This function is identical to [LOCATE](https://docs.singlestore.com/db/v9.1/reference/sql-reference/string-functions/locate.md) but with the arguments reversed.

## Return Type

Integer position, one-indexed. 0 if not found.

## Examples

```sql
SELECT INSTR('ohai', 'i');

```

```output

+--------------------+
| INSTR('ohai', 'i') |
+--------------------+
|                  4 |
+--------------------+

```

```sql
SELECT INSTR('ohai', 'z');

```

```output

+--------------------+
| INSTR('ohai', 'z') |
+--------------------+
|                  0 |
+--------------------+
```

> **⚠️ 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: April 4, 2023

Source: [/db/v9.1/reference/sql-reference/string-functions/instr/](https://docs.singlestore.com/db/v9.1/reference/sql-reference/string-functions/instr/)

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