将空字符附加到mysql中的每个条目

时间:2012-07-08 09:19:11

标签: mysql

我有一个国家/地区表,其中countryName列包含国家/地区名称,其中每个国家/地区名称具有不同的名称长度。我需要使列中的所有名称具有相同的长度。我使用UPDATE country SET countryName = Concat(name,' ');为每个条目添加空字符,但是如何使所有名称具有相同的长度?

谢谢,

2 个答案:

答案 0 :(得分:1)

您应该使用MySQL RPADLPAD函数

UPDATE country SET countryName = RPAD(name,60,' '); 

这种方式''将被追加,直到达到60号。

答案 1 :(得分:1)

这会将用空格填充的countryName字段更新为表格中最长countryName的长度:

UPDATE country a
CROSS JOIN
(
    SELECT MAX(CHAR_LENGTH(countryName)) AS maxlen
    FROM country
) b
SET a.countryName = RPAD(a.countryName, b.maxlen, ' ')