sqlserver求积,sql乘积
sql语句问题,select语句求几何平均值,即叠乘之后开根号
1.首先要知道,oracle中开n次方的方法
站在用户的角度思考问题,与客户深入沟通,找到兰山网站设计与兰山网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:做网站、网站制作、企业官网、英文网站、手机端网站、网站推广、国际域名空间、雅安服务器托管、企业邮箱。业务覆盖兰山地区。
select power(exp(1),ln(27)/3) from dual ;--27的3次方根
2.其次要知道,orcle中分组求积的方法:
select exp(sum(ln(列))) from 表
--知道了这俩点,相信楼主也会计算了。
power()、exp()sqlserver中也可以用,
ln()函数应该也有吧,你试试。
在SQL语句中怎样将计算结果开根号
1.首先要知道,oracle中开n次方的方法
select power(exp(1),ln(27)/3) from dual ;--27的3次方根
2.其次要知道,orcle中分组求积的方法:
select exp(sum(ln(列))) from 表
--知道了这俩点,相信楼主也会计算了。
power()、exp()sqlserver中也可以用,
ln()函数应该也有吧,你试试。
如何用sql乘法求乘积?
根据题意,你应该想让1表中的A列和2表中的B列的对应行相乘,相乘不是问题,所以你的问题主要是在“对应行”上,如果你的两张表都有表示行号的字段,那就很好解决:
select
a.A*b.B
as
乘积
from
table1
as
a,table2
as
b
where
a.ID=b.ID;
如果没有行号,就必须使用函数或者子查询来解决行号的问题,但是你没有告诉我你用的是哪种数据库,SQL
SERVER
2005以上有ROW_NUMBER()函数可以解决,ORACLE有ROWNUM字段可以解决,不同的数据库解决行号的办法不同。这样吧,我给你个比较通用的子查询方法,不用这些特殊的函数:
select
a.A*b.B
as
乘积
from
(select
identity(int,1,1)
as
rownum,*
from
table1)
as
a,
(select
identity(int,1,1)
as
rownum,*
from
table2)
as
b
where
a.rownum=b.rownum
额~~~
晚上看了下我的回答,有点草率了,identity(int,1,1)估计不能这么用(现在过年,没
数据环境测试),下面这个代码保险点:
alter
table
table1
add
column
ididentity(int,1,1)
alter
table
table2
add
column
id
identity(int,1,1)
select
a.A*b.B
as
乘积
from
table1
as
a,table2
as
b
where
a.id=b.id;
分享名称:sqlserver求积,sql乘积
文章地址:http://scyanting.com/article/hoojeo.html