mysql - 如何编写 sql 查询来拆分列?

标签 mysql sql

我在 MySQL 中有一个表,例如

<小时/>
 aaa 1234555 asdasdvad
 asdasdada 4564456 as
 asdadw 8547965 asdasdasd
_________________________

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

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

如何编写 SQL 查询来执行此操作

如有任何帮助,我们将不胜感激

最佳答案

我们可以使用 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

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

关于mysql - 如何编写 sql 查询来拆分列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52165148/

相关文章:

php - 如何将动态谷歌地图添加到我的网站?

python - python 错误括号 ')' 附近的 MariaDB SQL 语法

sql - 查找丢失和无序的记录

sql - 将多行插入表中,只更改一个值

sql - Sequelize 查询 关联的性能问题

php - 为多个 (128) 数据库值创建 (PHP) 重定向功能的有效方法

mysql 将子查询保留在连接之外

php - 使用mysqldump在php中备份mysql数据库

SQL Server : create dynamically queries to select all related data in DB based on entry table and ID

mysql - MySQL 重复行