mysql - 在 MySQL 数据库上操作字符串

标签 mysql string

我有这些字符串:X322-1-381128X322-1-383128

我需要操作这些字符串以获得输出:

X322138128X322138328

我试过这个解决方案但没有成功,因为输出只是:X322138128

你能帮帮我吗?

mysql> SELECT
    'X322-1-381128' string,
    SUBSTRING_INDEX('X322-1-381128', '-', 1) a,
    SUBSTRING('X322-1-381128', 6, 1) b,
    SUBSTRING('X322-1-381128', 8, 2) c,
    SUBSTRING('X322-1-381128' ,- 3) d,
    CONCAT(
        SUBSTRING_INDEX('X322-1-381128', '-', 1),
        SUBSTRING('X322-1-381128', 6, 1),
        SUBSTRING('X322-1-381128', 8, 2),
        SUBSTRING('X322-1-381128' ,- 3)
    ) output,
    'X322-1-383128' string,
    SUBSTRING_INDEX('X322-1-381128', '-', 1) a,
    SUBSTRING('X322-1-381128', 6, 1) b,
    SUBSTRING('X322-1-381128', 8, 2) c,
    SUBSTRING('X322-1-381128' ,- 3) d,
    CONCAT(
        SUBSTRING_INDEX('X322-1-383128', '-', 1),
        SUBSTRING('X322-1-383128', 6, 1),
        SUBSTRING('X322-1-383128', 8, 2),
        SUBSTRING('X322-1-383128' ,- 3)
    ) output;
+---------------+------+---+----+-----+------------+---------------+------+---+----+-----+------------+
| string        | a    | b | c  | d   | output     | string        | a    | b | c  | d   | output     |
+---------------+------+---+----+-----+------------+---------------+------+---+----+-----+------------+
| X322-1-381128 | X322 | 1 | 38 | 128 | X322138128 | X322-1-383128 | X322 | 1 | 38 | 128 | X322138128 |
+---------------+------+---+----+-----+------------+---------------+------+---+----+-----+------------+
1 row in set

最佳答案

使用 替换('X322-1-381128','-')

关于mysql - 在 MySQL 数据库上操作字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58930110/

相关文章:

php - 如何在html文本区域中逐句获取字符串

java - 快速 Java String/toString 每行打印一个字符

c - MPI_Bcast 发送字符串

mysql - 无法在mysql选择查询中显示单列

php - 带有 DATE_ADD() 函数的 mysql UPDATE 函数

javascript - 如何使用javascript将数据存储到mysql数据库中?

php - mysql数据库性能问题