SQL代码解读"mod"和"CStr"
SQL code Interpretation "mod" and "CStr"
我得到了一个 SQL 代码示例,在将它转换为另一种语言之前,我需要了解它的作用。
有人可以用英语向我解释这段代码的作用吗?
=IIF(Fields!Time.Value < 10, "0" + CStr(Fields!Time.Value), CStr(Fields!Time.Value))
+ ":" +
IIF(Fields!Time.Value mod 60 < 10, "0" + FormatNumber(Fields!Time.Value mod 60,0), FormatNumber(Fields!Time.Value mod 60,0))
非常感谢
它需要时间(以秒为单位),并将其转换为 "mm:ss" 格式。就其价值而言,这看起来更像是 VB 脚本而不是 SQL。无论如何,Cstr
simply converts to string, mod
给出除法的余数,例如16 mod 10
给你6
,26 mod 10
也给你6。
第一部分是使用Fields!Time.Value/60
获取时间,以分钟为单位,然后当这个数字小于10时,在开头附加一个0:
| If seconds less than 10 | Append 0 to left of seconds | else just use seconds |
=IIF( Fields!Time.Value < 10 , "0" + CStr(Fields!Time.Value), CStr(Fields!Time.Value))
接下来的部分基本上和秒部分一样,只是用mod来获取秒数,比如97秒需要分解为“01:37”,所以97 / 60
用于获取 1,然后因为它小于 10,所以在其前面加上“0”,然后 97 mod 60
用于获取秒数,得到 37,因为它超过 10没有任何前缀。
我得到了一个 SQL 代码示例,在将它转换为另一种语言之前,我需要了解它的作用。
有人可以用英语向我解释这段代码的作用吗?
=IIF(Fields!Time.Value < 10, "0" + CStr(Fields!Time.Value), CStr(Fields!Time.Value))
+ ":" +
IIF(Fields!Time.Value mod 60 < 10, "0" + FormatNumber(Fields!Time.Value mod 60,0), FormatNumber(Fields!Time.Value mod 60,0))
非常感谢
它需要时间(以秒为单位),并将其转换为 "mm:ss" 格式。就其价值而言,这看起来更像是 VB 脚本而不是 SQL。无论如何,Cstr
simply converts to string, mod
给出除法的余数,例如16 mod 10
给你6
,26 mod 10
也给你6。
第一部分是使用Fields!Time.Value/60
获取时间,以分钟为单位,然后当这个数字小于10时,在开头附加一个0:
| If seconds less than 10 | Append 0 to left of seconds | else just use seconds |
=IIF( Fields!Time.Value < 10 , "0" + CStr(Fields!Time.Value), CStr(Fields!Time.Value))
接下来的部分基本上和秒部分一样,只是用mod来获取秒数,比如97秒需要分解为“01:37”,所以97 / 60
用于获取 1,然后因为它小于 10,所以在其前面加上“0”,然后 97 mod 60
用于获取秒数,得到 37,因为它超过 10没有任何前缀。