将数字转换为英尺和英尺英寸

时间:2015-05-06 13:50:32

标签: sql sql-server-2008

我想从一个表(使用sql server 2008)中获取一个数字,例如720,并将其转换为英尺和英寸:

Format(Val(Length) \ 12, "00' ") & Format(Val(Length) Mod 12, "00\""")

这应该在sql语句中。

我无法正确获取语法。有什么帮助吗?

2 个答案:

答案 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)+'"'