我正在尝试从过滤器重量<25 kgs的表中提取数据,但是我的表具有以磅为单位的重量,我尝试在sql下方使用某些方法,请告诉我这是正确的方法,还是有其他方法。

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

#1楼 票数:3

您的解决方案可以工作,但不是可行的 更好的解决方案是将25kg转换为lbs。 这样,如果您在WEIGHT列上有一个索引,则查询分析器可以利用它。

还有一点要注意:为什么要舍入到小数点后零位? 这样您将失去准确性。 除非您有某些要求,否则我将舍入四舍五入。 这是不必要的开销。

#2楼 票数:0

就像其他人提到的那样,您不想转换权重,因为它将导致SQL Server不使用您的索引。 因此,请尝试以下操作:

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

  ask by user3311323 translate from so

未解决问题?本站智能推荐:

4回复

在SSMS的SQL查询中将千克转换为克

在下面的代码中,有一个列名为birthweight的列名,当前在其拉动表格中以“ kg”显示,但我希望通过将kg转换为g以克显示 例如,现在显示为2.92千克,我需要将其转换为2920.00克 请有人可以更改此SQL以将输出显示为2920.00 g而不是2.92 kg吗?
3回复

如何在Sql中将行转换为列

我有一个表Columns 和第二个表Response ,其中保存所有数据。 现在我想创建一个SQL视图,其结果应该是这样的 我尝试使用pivot 但这对我没有用,我也提到这个有效地将行转换为sql server中的列但是无法实现它。 如何在SQL View中实现相同
1回复

在SQL2008中将列值转换为行

如果您可以帮助我将Column转换为SQL Table中的行,那就太好了。 假设我有3列,分别是: 员工ID Shift_Date Shift_ID 目前它像这样出现: 像这样的桌子 我想像这样显示为结果- 结果表 但是我想要有价值的东西,请您帮忙。
1回复

在T-SQL中将负十进制转换为二进制

我试图找到信息以及如何。 但是它没有任何有用的信息。 使用T-SQL,我想将负十进制转换为二进制并将其转换回。 样本值: -9223372036854775543 我尝试用Calculater将此值转换为Bin结果是... 10000000000000000000000000000
3回复

在T-SQL中将'01-Sep-2017'转换为'01/09/2017'吗?

我已经在C#/ WPF中开发了一个应用程序,该应用程序以两种格式将nvarchar列保存在表中,一种是使用连字符,并使用正斜线,例如:'01 -Sep-2017'至'01 / 09/2017' 最简单的解决方案是在查询时将格式为“ 01-Sep-2017”的日期转换为“ 01/09/2017
2回复

在SQLServer中将行值转换为列

桌子: 所需输出:
2回复

在SQLServer中将列转换为行

我有一个名为Dateinfo的表,数据如下所示: 我希望我的输出看起来像这样:
13回复

在SQLServer中将varchar转换为日期时间

如何在 SQL Server 2008 mmddyyyy格式为mmddyyyy的字符串转换为datetime时间? 我的目标列在DateTime 我已经尝试使用Convert和大多数Date样式值,但是我收到一条错误消息: “将 varchar 数据类型转换为 datetime 数据类型导致值超