通过CRATE在MYSQL中分割字符串

时间:2018-11-15 05:43:00

标签: mysql crate cratedb

我想在CRATE中分割字符串。我尝试了substr,但只需要substr(string,long,long)。我想要类似可以带分隔符字符串的函数。

示例:

value = 1234-5656

首先从XYZ中选择SUBSTR(value,'-',1);

我想在SQL查询中将该值分为1234和5656。但是CRATE不支持SUBSTR(value,'-',1)。因此,我正在寻找一个选项来拆分CRATE查询中的值。

有帮助吗?

3 个答案:

答案 0 :(得分:0)

SUBSTRING_INDEX在这里很方便:

SELECT
    SUBSTRING_INDEX('1234-5656', '-', 1)  AS first,
    SUBSTRING_INDEX('1234-5656', '-', -1) AS second
FROM yourTable;

enter image description here

答案 1 :(得分:0)

请尝试使用以下查询:

SELECT SUBSTRING_INDEX(SUBSTRING_INDEX(name, '_', 1), '_', -1) as beforesplit, SUBSTRING_INDEX(SUBSTRING_INDEX(name, '_', 2), '_', -1) as aftersplit FROM testenter

答案 2 :(得分:0)

对于CrateDB,您可能想使用regex_matches函数获取更多信息on Create's documentation site

但是以下内容应该可以为您提供所需的信息

select regexp_matches(yourColumnName, '([0-9])\w+')[1] from yourTable