回答
如果你只需要兩個十進制值,你可以乘以100,地板100結果和分(這是必要的,因爲地板只能地板的一些整數):
select floor(width * 100)/100 from Home
這裏有步驟
3.99999999 * 100 = 399.999999 --- Multiply by 100
floor(399.999999) = 399 --- floor
399/100 = 3.99 --- Divide by 100
它使用不同形式的round function with a third parameter也是可能的。
當第三個參數是從0不同的結果被截斷,而不是圓形
語法
ROUND (numeric_expression , length [ ,function ])
參數
numeric_expression
是的表達確切的數字或 近似數字數據類型類別,位數據類型除外。
length
是要將numeric_expression四捨五入的精度。 長度必須是tinyint,smallint或int類型的表達式。當 長度爲正數時,numeric_expression將四捨五入爲由長度指定的小數位數 。當長度爲 負數時,numeric_expression在 小數點的左側進行四捨五入,如長度所指定。
function
是 操作要執行的類型。函數必須是tinyint,smallint或int。當 函數被省略或值爲0(默認值)時,numeric_expression 被四捨五入。 當指定0以外的值時,將截斷數值表達式 。
下面是選擇使用的round
這個版本:
select round(width, 2, 1) from Home
相同的答案,更好的介紹:) –
如果你想要3.99或3.9的值,那麼你不想要round()
。你想要floor()
。但是,這對整數有效,但不是小數。
cast(width as decimal(10,2))
的天真方法將返回4.00
,如將round(width, 2)
。一種方法是減去一小部分。所以:
select cast(width - 0.005 as decimal(10, 2))
應該給你「3.99」。
這只是一個示例,我應該如何處理數據範圍? – ara
ROUND(width, 1 or 2, 1)
應該工作最適合你。例如:
SELECT CONVERT(NUMERIC(13,2), ROUND(width, 2, 1))
FROM Home
將返回3.99,和
SELECT CONVERT(NUMERIC(13,1), ROUND(width, 1, 1))
FROM Home
將返回3.9
謝謝,但爲什麼你使用「13」 – ara
你可以根據你的架構來改變它。檢查您的列「寬度」的類型。如果它是Numeric(x,y),那麼你的代碼應該適用於NUMERIC(x,1或2)。我認爲它是NUMERIC(13,y)。 –
這是相當簡單的,如果你想要的結果3.9,然後
select round(width,1) from Home
如果您需要結果3.99然後用..
select round(width,2) from Home
- 1. 類型和輪在SQL Server
- 2. SQL Server 2014中客戶端的輪換
- 3. SQL SERVER一輪解釋5較低
- 4. ReBus Sql Server消費者輪詢控制
- 5. 如何選擇輪在SQL Server
- 6. SQL Server 2014可能的BizTalk WCF-SQL輪詢問題CU6
- 7. 爲什麼SQL Server Compact中的日期時間類型輪值?
- 8. 一輪SQL
- 9. 使用webpack-dev-server輪詢
- 10. 不要在SQL Server存儲過程中強制輪迴
- 11. SQL Server CE到SQL Server
- 12. SQL Server死鎖(SQL Server 2000)
- 13. SQL Server 2008,SQL Server 2005
- 14. SQL Server 2008到SQL Server 2005
- 15. 是否有SQL Server Express的SQL Server Profiler?
- 16. SQL Server 2008 R2中的SQL Server Reporting Services
- 17. 的SQL Server 2008與SQL Server 2005
- 18. sql server 2000上的sql server 2005
- 19. 獲取啓動SQL Server中的員工輪班的時間和結束時間
- 20. sql server sql case
- 21. SQL Server Express的
- 22. 的SQL Server 2014
- 23. SQL Server 2008的
- 24. 的SQL Server PIVOT
- 25. SQL Server的鎖
- 26. 的SQL Server行
- 27. 的SQL Server SPID
- 28. SQL Server的列
- 29. SQL Server的ConnectionString
- 30. SQL Server/Link Server SOTAMAS90?
如果你想要3.99或3.9,那麼你不需要'round()'。 –