sqlserver相乘,sql 乘积

sqlserver 中乘法计算

update B set TotalPrice=Price*Number from B join A on A.BookID=B.BookID

创新互联公司是一家专注于成都做网站、成都网站建设与策划设计,东兴网站建设哪家好?创新互联公司做网站,专注于网站建设10余年,网设计领域的专业建站公司;建站业务涵盖:东兴等地区。东兴做网站价格咨询:18982081108

update B set TotalPrice=Price*Number from B , A where A.BookID=B.BookID

SQL所有字段相乘

sqlserver:

select a*b*c*isnull(d,1) from table

null跟任何值计算都是null,isnull函数判断d列若是null就改为1

如何用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;

SQL server数据库表之间的字段值相乘怎么写

解决方案:

比如说表t,有三个int型字段xintyintzint要求实现z=x*y那么,如果是SQLSERVER的话,可以写一个Job定时扫描表t,把x*y的结果赋值给zJob要做的事情就是:updatetsetz=x*ywherexisnotnullandyisnotnull或者,在表t上建一个触发器,当满足x、y均有值的时候,把x*y的结果更新给zaccess不清楚怎么创建Job或者触发器你可以写一个小程序,定时执行,用这个小程序去刷表t,更新z的值!

您遇到过吗?sqlserver存储过程中两个real字段相乘如果一个是小数得到的

去看一看MSSQL SERVER 的赞助,REAL的定义用于表示浮点数字数据的近似数字数据类型。浮点数据为近似值;并非数据类型范围内的所稀有据都能精确地表示。应当改成decimal 或 numeric 数据类型,修改时留意小数精度.

有关sqlserver中的乘法运算

不管是sql语句里还是存储过程里,没有什么特别的函数来作乘法去处,直接用*是可以的,可能还是你的语法哪里没写对


标题名称:sqlserver相乘,sql 乘积
网页地址:http://scyanting.com/article/dsihihs.html