在SQL中将磅转换为千克

时间:2015-03-30 20:58:09

标签: sql sql-server sql-server-2008 tsql

我正在尝试从具有过滤器权重<的表中提取数据。 25公斤,但我的桌子有重量磅,我尝试使用下面的sql可以请一些请告诉我这是正确的方式去做或有任何其他方式。

 select * from dbo.abc
     where (round((WEIGHT * 0.453592 ),0) < 25)

2 个答案:

答案 0 :(得分:3)

您的解决方案可行,但不是sargaeble。更好的解决方案是将25kgs转换为lbs。这样,如果您的WEIGHT列上有索引,查询分析器就可以使用它。

另外一个注意事项:为什么舍入到0位小数?你会以这种方式失去准确性。除非你有一些要求这样做,否则我会放弃四舍五入。这是不必要的开销。

答案 1 :(得分:0)

正如其他人提到的,您不想转换权重,因为它会导致SQL Server不使用您的索引。所以试试这个:

SELECT *
FROM dbo.acb
WHERE WEIGHT < ROUND(25/.453592,4)