当前位置:首页 » 编程语言 » sql计算小数
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

sql计算小数

发布时间: 2022-03-03 03:09:38

sql 如何取小数点前面的数

select substr('10.20.30.40',
instr('10.20.30.40', '.', 1, 1 /*这里的1表示第1个. */) + 1,
instr('10.20.30.40', '.', 1, 2 /*这里的2表示第2个. */) -
instr('10.20.30.40', '.', 1, 1 /*这里的1表示第1个. */) - 1)
from al;

❷ sql 是几位小数就显示几位小数如何实现

select
1.230,
REPLACE( RTRIM( REPLACE( Convert(varchar(10), 1.230), '0', ' ') ), ' ', '0')

查询结果:

1.230 1.23

SQL Server 2008 Express 下测试通过。

如果是 Oracle , 就更省事一些。

❸ sql 日期相减带小数 急!!!

例如比较'2010-1-1 00:01:00'和'2010-1-2 03:03:00'的日期差
select DATEDIFF (s,'2010-1-1 00:01:00', '2010-1-2 03:03:00')/(60.0*60.0*24.0)

---以下为结果:
1.126388888888

❹ SQL整数转换成小数

1、首先打开SQL Server数据库,然后准备一个数。


(4)sql计算小数扩展阅读


SQL数据类型有以下这些:

1、二进制数据类型。

二进制数据包括 Binary、Varbinary 和 Image

Binary 数据类型既可以是固定长度的(Binary),也可以是变长度的。

Binary[(n)] 是 n 位固定的二进制数据。其中,n 的取值范围是从 1 到 8000。其存储空间的大小是 n + 4 个字节。

Varbinary[(n)] 是 n 位变长度的二进制数据。其中,n 的取值范围是从 1 到 8000。其存储空间的大小是 n + 4个字节,不是n 个字节。

2、字符数据类型。

字符数据类型包括char、varchar和text。

字符数据是由字母、符号和数字的任意组合组成的数据。

varchar是可变长度字符数据,其长度不超过8kb。char是最大长度为8kb的固定长度字符数据。超过8kb的ASCII数据可以使用文本数据类型存储。

3、Unicode 数据类型。

Unicode数据类型包括nchar、nvarchar和ntext。

在Microsoft SQL Server中,传统的非Unicode数据类型允许使用由特定字符集定义的字符。在安装SQL Server期间,允许选择字符集。

在Unicode标准中,包含由各种字符集定义的所有字符。使用Unicode数据类型占用的空间是使用非Unicode数据类型的两倍。

❺ 如何用sql语句将计算结果保留两位小数

selectROUND(13.145,2);
结果为:13.15

❻ SQL怎么把小数转换为百分比

先将数据转换为numeric类型,保留4位小数点,由零点几变为百分号前边的数字,再转换为varchar类型,然后再加'%'
如:
select ml as 毛利,sshje as 实收金额,
cast(cast(ml/sshje as numeric(4,4))*100 as varchar(20)) + '%' as 利润率
from chasalldayhz

❼ sql server 2008计算一个人的准确年龄,精确到小数位1位.

第一种:
一张人员信息表里有一人生日(Birthday)列,跟据这个列,算出该人员的年龄
datediff(year,birthday,getdate())
例:birthday = '2003-3-8'
getDate()= '2008-7-7'
结果为:5
这样结果是会返回该人员的大概年龄,但不精确.不会精确到月或日.
按照上面测试的日期,该人员的实际年龄应该还不满5岁。在需要精确年龄的时候,就会有错.
第二种:
FLOOR(datediff(DY,birthday,getdate())/365.25)
FLOOR函数:
FLOOR(expr) 返回小于或等于expr的最大整数.FLOOR(1.1)返回1,FLOOR(-1.1)返回-2,FLOOR(1)返回1
这样就可以精确算出,该人员当前实际年龄了.
测试:
birthday = '2000-7-8'
getdate()= '2007-7-7'
算出结果为:6
在Oracle中,要获得日期中的年份,例如把sysdate中的年份取出来。
一种常用的方法是:to_number(to_char(sysdate,'yyyy'))
还有一种更好的方法,那就是使用oracle提供的Extract函数,使用方法是:
extract(year from sysdate) ,此方法获得的结果是数值型的 ,这种方法省掉了类型转换,更加简洁。
相应的,要取得月份或日,可以用extract (month from sysdate) 和extract (day from sysdate)

❽ sql 乘除 保留小数点问题

cast(SUM(DATEDIFF(ss,opentime ,leavetime )/60.0/60.0) as numeric(18,2) )
就可以只保留两位小数了。

❾ SQL哪些数据类型能带小数又能计算的

浮点数据类型能带小数又能计算。它包括REAL 数据类型、FLOAT、DECIMAL、NUMERIC

❿ SQL 求平均值保留小数问题

把取到的平均值round或者truncate一下(在avg外面),如下:

createviewAbcourseas
selectCno,COUNT(Cno)asNumber,round(avg(Grade),2)asAvggrade,MAX(Grade)asTopGrade
fromSCgroupbyCno;

望采纳,谢谢