Available in versions: Dev (3.19) | Latest (3.18) | 3.17 | 3.16 | 3.15 | 3.14 | 3.13 | 3.12 | 3.11 | 3.10 | 3.9
POSITION
Applies to ✅ Open Source Edition ✅ Express Edition ✅ Professional Edition ✅ Enterprise Edition
The POSITION()
function finds the first position of a string within another string, starting with 1.
SELECT position('hello', 'e'), position('hello', 'l', 4);
create.select( position("hello", "e"), position("hello", "e", 4)).fetch();
The result being
+----------+----------+ | position | position | +----------+----------+ | 2 | 4 | +----------+----------+
Dialect support
This example using jOOQ:
position("hello", "e")
Translates to the following dialect specific expressions:
-- ASE, SQLDATAWAREHOUSE, SQLSERVER charindex('e', 'hello') -- AURORA_MYSQL, AURORA_POSTGRES, COCKROACHDB, DUCKDB, EXASOL, FIREBIRD, H2, HSQLDB, MARIADB, MEMSQL, MYSQL, POSTGRES, -- SNOWFLAKE, TERADATA, TRINO, VERTICA, YUGABYTEDB position('e' IN 'hello') -- BIGQUERY, INFORMIX, ORACLE, SQLITE instr('hello', 'e') -- DB2, DERBY locate('e', 'hello') -- HANA, SYBASE locate('hello', 'e') -- ACCESS, REDSHIFT /* UNSUPPORTED */
(These are currently generated with jOOQ 3.19, see #10141), or translate your own on our website
Feedback
Do you have any feedback about this page? We'd love to hear it!