mysql - 使空间保持一致

标签 mysql sql

我需要编写一个查询,使字符串之间的空格保持一致

字段 order_text 包含字符串,它们可能由单个空格或两个或三个空格分隔,我们不确定有多少个空格。我需要做的是使这些空格一致(即2个空格)

mysql> SELECT order_text  FROM customer_cp_abdul LIMIT 4;
+------------------------------------------+
| order_text                               |
+------------------------------------------+
| Mar-2009-1008                            |
| Mar-2009-514  Sep-2009-1603  Mar-2010-22 |
| Mar-2009-2505  May-2009-2733             |
| Mar-2009-1160                            |
+------------------------------------------+
4 rows in set (0.00 sec)

最佳答案

您可以使用以下技巧:

select replace(replace(replace(order_text, ' ', '<>'), '><', ''), '<>', ' ')
from customer_cp_abdul
limit 4;

它用“<>”替换空格。多个空间最终看起来像 '<><><>' 。然后,><被删除,所以你得到 '<>' 。然后再更换一个。瞧!一个空间。

关于mysql - 使空间保持一致,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39850858/

相关文章:

java - 操作数应包含 1 列插入

php - IMG 目录不能存储在数据库中,但可以从查询中使用的相同变量查看

sql - 在考虑条件的同时对表进行分层排序

php - 正在生成新 ID : Getting actual IDs

mysql - MariaDB 默认 float 不能包含小数位

php - SQL从刚刚插入的行中获取ID

php - 如何按月在两个指定日期之间迭代

php - 检查数据库中是否存在电子邮件地址以及验证码是否正确,如果不发出警报并且不将数据保存在数据库中

SQL Server 2012 : Conditionally Incrementing a counter user ROW_NUMBER()

mysql - 在 Joomla 3.2 中编辑文章 SQL 错误