A. 如何让sql server乘除法计算精准
select convert(varchar(7),date_colName,121) from table通过convert来对日期进行格式化,只返回年月部分。CONVERT() 函数可以用不同的格式显示日期/时间数据。基本语法如下:CONVERT(data_type(length),data_to_be_converted,style)data_type(length) 规定目标数据类型(带有可选的长度)。data_to_be_converted 含有需要转换的值。style 规定日期/时间的输出格式。如上121的格式对应为:yyyy-mm-dd hh:mi:ss.mmm(24h)而上面定义的varchar(7),因此返回7个长度,即yyyy-mm
B. 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) 。
(2)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
)
)
C. SQL语句怎么表示除法运算
select case when 除数 =0 then 0 else 被除数/除数 end
D. sql 乘法
这个应该简单;
select (1.A*2.B)as 两列的乘积 from 1,2
即可实现该功能!
E. sql怎么进行加减乘除运算
前提:能进行加减运行的必须是数值类型number,或者是时间类型。字符串类型无法进行加减!
SQL语言是高级的非过程化编程语言,允许用户在高层数据结构上工作。它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以具有完全不同底层结构的不同数据库系统可以使用相同的结构化查询语言作为数据输入与管理的接口。
SQL语言语句可以嵌套,这使他具有极大的灵活性和强大的功能。
掌握了基本的SQL语句语法,就像英语语法一样,就能够对SQL语句运用来去自如!
如果字段‘数量’为数值型 直接用+,-,*,/
如果字段‘数量’为非数值型,则转换为数值型,eg:转换为int型 convert(int,‘数量')
或cast('数量' as int)
之后再用+,-,*,/
F. 用sql语句算乘法
select a*b as乘积from tablename
SELECT distinct a.购房人,a.房间号,(a.总房价 -
(SELECT SUM( b.已收款额 )
FROM table1 a, table2 b
WHERE a.房间号 = b.房间号
))
FROM table1 a,table2 b where
(6)sql函数乘除扩展阅读:
SELECT
a.购房人
a.房间号
a.总房价
FROM
table1 AS a
G. SQL 语句 加减乘除法 表达式 怎么写
SELECT
a.购房人,
a.房间号,
a.总房价-(
SELECTSUM(b.已收款金额)
FROMtable2ASb
WHEREa.房间号=b.房间号
)AS还需缴纳金额
FROM
table1ASa
加减乘除运算. 上面不是已经有 减 的运算了么? 就是简单写 +-*/ 啊
H. 如何用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;
I. sql语句有没有求乘法的函数
当然有啊
看你什么数据库了
oracle里叫instr,sqlserver里叫charindex
不过返回的不是真假,而是0或其他数字,如果是0,表示不包含,如果是大于0的,则表示包含
instr和charindex的用法你查查网络吧,主要就是某一个字符串是否包含另一个字符串,如果包含的话,返回的是这个字符串的起始位置