我想从一个表(使用sql server 2008)中获取一个数字,例如720,并将其转换为英尺和英寸:
Format(Val(Length) \ 12, "00' ") & Format(Val(Length) Mod 12, "00\""")
这应该在sql语句中。
我无法正确获取语法。有什么帮助吗?
答案 0 :(得分:2)
虽然您可以使用format()
,但没有必要。
在创建具有特定格式的字符串时,我喜欢在字符串中使用带有通配符的replace()
。这让我可以轻松控制格式以查看正在生成的内容:
select replace(replace('<feet>'' <inches>"',
'<feet>', val(length) / 12),
'<inches>', val(length) % 12)
这假设表达式val(length)
返回一个整数。如果列刚刚被称为长度,那么您将使用length
而不是val(length)
。
答案 1 :(得分:0)
我认为你正在寻找这个
DECLARE @value INT = 720
SELECT CONVERT(VARCHAR(20),@value /12) + '''' + CONVERT(VARCHAR(20),@value %12)+'"'