㈠ sql如何做除法
SQL做除法的步骤:
select
t.[origin-destination],t.[SH/LANE/MOT] /(select count(1) from ['TMS$'])ASPERCENTAGEFROM (代码1) t
group by [origin-destination],t.[SH/LANE/MOT]
having t.[SH/LANE/MOT] /count(*) <= 0.01
注:两个count都是int,相除会没有小数部分,所以应该都给转成带小数的数。
cast as numeric(10,4) 。
(1)sql中除法保留后七位扩展阅读
例题,表明为chuqinqk 列名 迟到 1(次)一个月的总天数为30 求迟到率。
select * from table1 where 工资>2500 and 工资<3000 //同上
select 姓名 from table1 where 性别='0' and 工资='4000'
select * from table1 where not 工资= 3200
select * from table1 order by 工资desc //将工资按照降序排列
select * from table1 order by 工资 asc //将工资按照升序排列
select * from table1 where year(出身日期)=1987 //查询table1 中所有出身在1987的人select * from table1 where name like
'%张' /'%张%' /'张%' //查询1,首位字‘张’3,尾位字‘张’2,模糊查询
select * from table1 order by money desc //查询表1按照工资的降序排列表1 (升序为asc)
select * from table1 where brithday is null //查询表1 中出身日期为空的人
SQL语言,是结构化查询语言(StructuredQueryLanguage)的简称。
㈡ SQL除法问题
7/12中的/被当作是整数除法
应该在sql语句的相应位置加上1.0*,
如1.0*7/12,这样整个表达式会被认为是小数计算。
㈢ 关于SQL存储过程中保留小数点后几位的问题
convert(numeric(18,1),a*b)
㈣ 数据库select语句中进行除法如何保留小数点后数据
一般来说,是显示双精度的。如果要保留多少位数,则需要用Round函数。。。
例如 select round([字段1]/[字段2]+0.00000001,2)As [字段3] from 表1。
为什么非要在后面加上0.00000001呢?这是因为这个函数跟Excel里的稍有不同,你可以分别测试下这两个函数:round(0.5,0)和round(0.50000001,0),前者返回0,后者返回1。
㈤ sql语句里,做除法。
定义costingprice为:Decimal(p,q)类型 p是总长度,q是小数位数。
㈥ SQL如何做除法
这样:
select
t.[origin-destination],t.[SH/LANE/MOT] /(select count(1) from ['TMS$'] )ASPERCENTAGE
FROM (代码1) t
group by [origin-destination],t.[SH/LANE/MOT]
having t.[SH/LANE/MOT] /count(*) <= 0.01
注:两个count都是int,相除会没有小数部分,所以应该都给转成带小数的数。
cast as numeric(10,4) 。
(6)sql中除法保留后七位扩展阅读:
SQL中除法运算的实现
R(X,Y)÷S(Y,Z)的运算用结构化语言SQL 语句可表达为下列形式:
select distinct R.X from R R1
where not exists
(
select S.Y from S
where not exists
(
select * from R R2
where R2.X=R1.X and R2.Y=S.Y
)
)