Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/59.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql sql-在数值后添加0_Mysql_Sql - Fatal编程技术网

Mysql sql-在数值后添加0

Mysql sql-在数值后添加0,mysql,sql,Mysql,Sql,我的sql表中有列。我想知道如何在列中的数值后添加零。例如: 我有一些值,比如9,2,7,10。我想在这些数字后面加一个零。我希望他们是90,20,70,100 列中的某些值后面已经有0,例如70、20、100。这些人应该保留他们的价值观 我该怎么办 您可以使用和 假设列类型为INT 使用案例检查乘以10的值是否小于或等于100 SELECT (CASE WHEN (mt_ca1*10) <= 100 THEN CONVERT(CONCAT(mt_ca1,'0'),UNS

我的sql表中有列。我想知道如何在列中的数值后添加零。例如:

我有一些值,比如9,2,7,10。我想在这些数字后面加一个零。我希望他们是90,20,70,100

列中的某些值后面已经有0,例如70、20、100。这些人应该保留他们的价值观

我该怎么办

您可以使用和

假设列类型为INT

使用案例检查乘以10的值是否小于或等于100

SELECT 
(CASE
    WHEN (mt_ca1*10) <= 100
    THEN CONVERT(CONCAT(mt_ca1,'0'),UNSIGNED INTEGER)
    ELSE mt_ca1
END) AS mt_ca1
FROM yourtable
选择
(案例

当(mt_ca1*10)将列乘以10时(不确定表名,请编辑该查询):

UPDATE\u表__
设置mt_ca1=(mt_ca1*10),
mt_ca2=(mt_ca2*10)
其中mt_ca1<100或mt_ca2<100;

不清楚您是想在两位数后加零还是在所有数字后加零。MySQL有子字符串功能,但您需要澄清您的需要。

将它们乘以10如何?实际上,我不明白为什么这种转换会有用。为什么有些需要调整,而另一些则不需要?可能会有帮助?如何您是否认为
10
应转换为
100
,但以零结尾的值应保留其值?因此,100是否应具有另一个零?我不确定列类型是否为文本类型。即使列不是文本类型,您也可以使用CONCAT,此处的更多详细信息:这不是重点。重点是返回类型
mt_ca1
可能会从
int
更改为
text
,这可能会破坏查询的客户端。啊,好吧,我明白你的意思了,我假设他/她在使用php,因为它被标记为phpmyadmin。更新了我的答案,以适应列类型是否确实为int。你的示例有两个不同的列名。此外,OP询问是否有数字10然后再加上零,如果有07,20,100,那么就让它保持这样。OP的问题不是vlear,但这并不能回答这个问题。嗨@john,这是怎么回事:“我有一些值,例如9,2,7,10。我想在这些数字后面加一个零。我想它们是90,20,70,100。”这是:“有些列中的值后面已经有0,例如70、20、100。”很高兴能提供帮助。如果你被最后1%的值卡住了,请随意发布一个链接作为评论,如果我还没醒,我会看一看。
UPDATE __TABLE__
    SET mt_ca1 = (mt_ca1 * 10),
        mt_ca2 = (mt_ca2 * 10)
WHERE mt_ca1 < 100 OR mt_ca2 < 100;