自来云

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
  138 随笔 :: 0 文章 :: 1 评论 :: 25万 阅读
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
复制代码
sql 取整数去小数点
update cn_product set productprice2=ROUND(productprice1*3.3,0,1) where productclassid='2'

Sql截取浮点小数位数,不四舍五入
round(551.239567,2,0)
结果:551.24

round(551.239567,2,1)
结果:551.23

第一个2表示截取2位
第二个0,1分别表示0是四舍五入,0以外是截取


如何分别取一个小数的整数部分和小数部分呀,比如12.19,取出来整数为12,小数为19?
使用CHARINDEX函数和SUBSTRING或LEFT或RIGHT函数,即可

整数部分: select cast(19.001 as int)
小数部分: select 19.001 - cast(19.001 as int)

//小数点部分:Substring(列名,CHARINDEX('.',列名)+1,Len(列名)-CHARINDEX('.',列名))--->sql
//小数点部分:mid(列名,InStr('.',列名)+1,Len(列名)-InStr('.',列名))--->access


SQL中关于截取小数点后面位数的问题
我要让某个字段小数点后面都保留四位的,而且不能四舍五入,如数值15.14798 我要得到15.1479,请问怎么实现,谢谢大家!

select left(cast(1.7455 as varchar(50)) , charindex('.',cast(1.7455 as varchar(50))) + 2)


sql截取小数 select cast(19.16558 as decimal(9,2))


double类型的数据小数点后面位数太长,怎么样才能保留两位小数呀?
四舍五入取小数点后 2 位。 
float f = 1.234567F; 
f = float.Parse(f.ToString("F2")); 
Console.WriteLine(f.ToString());

Math.Round()这个是四舍五入的 
f.ToString("0.00");这个只是用来显示的


Response.Write((0.3742621697275).ToString("f2"));//fn就表示小数点后保留n位

decimal 和 numeric
带定点精度和小数位数的 numeric 数据类型。

decimal[(p[, s])] 和 numeric[(p[, s])]

定点精度和小数位数。使用最大精度时,有效值从 - 10^38 +110^38 - 1decimal 的 SQL-92 同义词是 decdec(p, s)。

p(精度)

指定小数点左边和右边可以存储的十进制数字的最大个数。精度必须是从 1 到最大精度之间的值。最大精度为 38。

s(小数位数)

指定小数点右边可以存储的十进制数字的最大个数。小数位数必须是从 0 到 p 之间的值。默认小数位数是 0,因而 0 <= s <= p。最大存储大小基于精度而变化。
复制代码

 

posted on   自来云  阅读(32033)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
点击右上角即可分享
微信分享提示