
正文
sqlserver乘法,sql中乘法运算
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
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的值!
相关问答
Q1: 用pl/sql 输出九九乘法表
经过测试,可以直接使用
第一、在Oracle9i下的脚本:
SELECT to_char(flag)||'=1*'||to_char(flag) "1" ,
CASE WHEN flag1 THEN to_char(flag*2)||'=2*'||to_char(flag) ELSE '' END "2",
CASE WHEN flag2 THEN to_char(flag*3)||'=3*'||to_char(flag) ELSE '' END "3",
CASE WHEN flag3 THEN to_char(flag*4)||'=4*'||to_char(flag) ELSE '' END "4",
CASE WHEN flag4 THEN to_char(flag*5)||'=5*'||to_char(flag) ELSE '' END "5",
CASE WHEN flag5 THEN to_char(flag*6)||'=6*'||to_char(flag) ELSE '' END "6",
CASE WHEN flag6 THEN to_char(flag*7)||'=7*'||to_char(flag) ELSE '' END "7",
CASE WHEN flag7 THEN to_char(flag*8)||'=8*'||to_char(flag) ELSE '' END "8",
CASE WHEN flag8 THEN to_char(flag*9)||'=9*'||to_char(flag) ELSE '' END "9"
FROM (
SELECT 1 flag FROM dual
UNION ALL
SELECT 2 FROM dual
UNION ALL
SELECT 3 FROM dual
UNION ALL
SELECT 4 FROM dual
UNION ALL
SELECT 5 FROM dual
UNION ALL
SELECT 6 FROM dual
UNION ALL
SELECT 7 FROM dual
UNION ALL
SELECT 8 FROM dual
UNION ALL
SELECT 9 FROM dual) a
二、在sqlserver下脚本:
select convert(varchar(10),flag)+'=1*'+convert(varchar(10),flag) [1],
case when flag1 then convert(varchar(10),flag*2)+'=2*'+convert(varchar(10),flag) else '' end [2],
case when flag2 then convert(varchar(10),flag*3)+'=3*'+convert(varchar(10),flag) else '' end [3],
case when flag3 then convert(varchar(10),flag*4)+'=4*'+convert(varchar(10),flag) else '' end [4],
case when flag4 then convert(varchar(10),flag*5)+'=5*'+convert(varchar(10),flag) else '' end [5],
case when flag5 then convert(varchar(10),flag*6)+'=6*'+convert(varchar(10),flag) else '' end [6],
case when flag6 then convert(varchar(10),flag*7)+'=7*'+convert(varchar(10),flag) else '' end [7],
case when flag7 then convert(varchar(10),flag*8)+'=8*'+convert(varchar(10),flag) else '' end [8],
case when flag8 then convert(varchar(10),flag*9)+'=9*'+convert(varchar(10),flag) else '' end [9]
from
(select 1 flag
union all
select 2
union all
select 3
union all
select 4
union all
select 5
union all
select 6
union all
select 7
union all
select 8
union all
select 9) a
Q2: 有关sqlserver中的乘法运算
不管是sql语句里还是存储过程里,没有什么特别的函数来作乘法去处,直接用*是可以的,可能还是你的语法哪里没写对
Q3: sqlserver 中乘法计算
update B set TotalPrice=Price*Number from B join A on A.BookID=B.BookID
或
update B set TotalPrice=Price*Number from B , A where A.BookID=B.BookID





![【电子书】[历史军事] 《汉代思想史》[金春峰][epub+mobi+azw3] 【电子书】[历史军事] 《汉代思想史》[金春峰][epub+mobi+azw3]](https://www.04ip.com/template/qe/style/noimg/14.jpg)


