SUBSTRING_INDEX
适用于 ✅ 开源版 ✅ 专业版 ✅ 企业版
SUBSTRING_INDEX()
函数从字符串的开头获取一个子字符串,直到第 n 个分隔符出现。
SELECT substring_index('a,b,c,d', ',', 2), substring_index('a,b,c,d', ',', 3);
create.select( substringIndex(val("a,b,c,d"), ",", 2), substringIndex(val("a,b,c,d"), ",", 3)).fetch();
结果是
+-----------------+-----------------+ | substring_index | substring_index | +-----------------+-----------------+ | a,b | a,b,c | +-----------------+-----------------+
方言支持
此示例使用 jOOQ
substringIndex(val("a,b,c,d"), ",", 3)
翻译成以下特定方言的表达式
Aurora MySQL, Databricks, MariaDB, MemSQL, MySQL
substring_index('a,b,c,d', ',', 3)
ClickHouse
substringIndex('a,b,c,d', ',', 3)
DB2, Oracle
coalesce( substr( 'a,b,c,d', 1, (nullif( instr('a,b,c,d', ',', 1, 3), 0 ) - 1) ), 'a,b,c,d' )
Vertica
coalesce( substring( 'a,b,c,d', 1, (nullif( instr('a,b,c,d', ',', 1, 3), 0 ) - 1) ), 'a,b,c,d' )
ASE, Access, Aurora Postgres, BigQuery, CockroachDB, Derby, DuckDB, Exasol, Firebird, H2, HSQLDB, Hana, Informix, Postgres, Redshift, SQLDataWarehouse, SQLServer, SQLite, Snowflake, Sybase, Teradata, Trino, YugabyteDB
/* UNSUPPORTED */
使用 jOOQ 3.21 生成。早期 jOOQ 版本的支持可能有所不同。 在我们的网站上翻译您自己的 SQL
反馈
您对此页面有任何反馈吗? 我们很乐意听到!