如何编写我的SQL查询以拆分列?

时间:2018-09-04 11:19:55

标签: mysql sql

我在MySQL中有一个表,例如


 aaa 1234555 asdasdvad
 asdasdada 4564456 as
 asdadw 8547965 asdasdasd
_________________________

我想通过拆分数字和字母将其拆分为两列,就像

   t1                     t2
_________________   _______________
aaa asdasdvad          1234555
asdasdada as           4564456
asdadw asdasdasd       8547865

我该如何编写sql查询来做到这一点

任何帮助将不胜感激

1 个答案:

答案 0 :(得分:1)

我们可以使用SUBSTRING_INDEX来完成此任务,而不会带来太多麻烦:

SELECT
    CONCAT(SUBSTRING_INDEX(col, ' ', 1), ' ', SUBSTRING_INDEX(col, ' ', -1)) AS t1,
    SUBSTRING_INDEX(SUBSTRING_INDEX(col, ' ', 2), ' ', -1) AS t2
FROM yourTable;

enter image description here

Demo

但是,这个答案实际上只是假设您希望将第一项和第三项连接在一起作为一列,而将中项作为第二列。我不检查数字,字母等。