gpt4 book ai didi

mysql - 有没有办法计算 MySQL 列中的所有尾随零?

转载 作者:行者123 更新时间:2023-12-04 20:04:00 25 4
gpt4 key购买 nike

我正在寻找是否有办法计算列中尾随零的数量。该列最多由 13 个数字组成,如下所示,我想在实际数字之前计算所有零,但不知道如何去做。

Example numbers
2200040000000 -- this would have the value 7
1411258181000 -- this would have the value 3

我已经设法在 Excel 中做到这一点,但我试图在查询中直接在 MySQL 中做到这一点,而不是在 Excel 中导入数据,然后编写查询,因为还有更多步骤需要完成。

以下是公式:
=6+RIGHT(TEXT(B17,"0.##############E+00"),2)-LEN(TEXT(B17,"0.##############E+00"))

如果有人能就如何解决这个问题提出建议,我将不胜感激,因为这将真正帮助我前进,而不是在 Excel 中来回走动。

最佳答案

您可以使用 string function TRIM() ,从 MySQL 早期就可以使用:

char_length(num) - char_length(trim(trailing '0' from num))
trim(...)删除尾随 0 s 来自字符串;原始值和修剪值之间的长度差异为您提供尾随 0 的数量s 在字符串中。

Demo on DB Fiddle :
create table t (num bigint);
insert into t values (2200040000000), (1411258181000);

select
num,
char_length(num) - char_length(trim(trailing '0' from num)) cnt_trailing_0s
from t;

编号 | cnt_trailing_0s
------------: | --------------:
2200040000000 | 7
1411258181000 | 3

关于mysql - 有没有办法计算 MySQL 列中的所有尾随零?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59903833/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com