我有一个用户表,其用户名栏由六位数字组成,例如675381,我需要在每个用户名前加一个零,例如0675381将是前一个示例的最终输出,是否有可以处理此问题的查询?
答案 0 :(得分:29)
UPDATE Tablename SET Username = Concat('0', Username);
答案 1 :(得分:5)
列的类型是什么?
如果是字符串类型,请尝试以下方法:
UPDATE your_table SET column_name=concat('0',column_name);
答案 2 :(得分:1)
你的意思是“前置”?即将它添加到前面?
列是否为数字?你总是想要输出7个字符吗?
假设这样的东西适用于查询:
select LPAD(CONVERT(username, CHAR), 7, '0')
如果列是字符,则不需要CONVERT()部分,只需LPAD用户名。
如果要永久修改表中的值,则需要确保列是字符类型,并使用上面的UPDATE。
答案 3 :(得分:0)
你可能想要使用CONCAT_WS('','0',Username),因为如果有一个空值,那么你最终会得到NULL而不是'0'。这可能不是问题,但我学到了很多东西。