sql常用计算(两字段相除)

takeshe 2009-10-21 05:19:34
select *,(sl/zl)as zll from 表

表里的sl和zl都有数的,为什么zll总是0呢?我应该怎么写呢?
请高手指教
...全文
8534 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
lovezx1028 2009-10-23
  • 打赏
  • 举报
回复
精度問題。。
dawugui 2009-10-21
  • 打赏
  • 举报
回复
[Quote=引用楼主 takeshe 的回复:]
select *,(sl/zl)as zll from 表

表里的sl和zl都有数的,为什么zll总是0呢?我应该怎么写呢?
请高手指教
[/Quote]

select * , case when z1 = 0 then 0 else sl*1.0/zl end from tb
SQL77 2009-10-21
  • 打赏
  • 举报
回复
select *,(sl*1.000/zl)as zll from TB

select *,(CONVERT(DEC(18,3),sl)/zl)as zll from
SQL77 2009-10-21
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 takeshe 的回复:]
那如果select *,(sl*zl)as zll from 表这样呢怎么写
[/Quote]
select *,(sl*1.000/zl)as zll from TB

select *,(COVNERT(DEC(18,3),sl)/zl)as zll from


最好要判断除0
--小F-- 2009-10-21
  • 打赏
  • 举报
回复
--如果是2位 这样
select *,cast((s1.*z1) as dec(18,2)) as z1l from 表
--小F-- 2009-10-21
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 takeshe 的回复:]
那如果select *,(sl*zl)as zll from 表这样呢怎么写
[/Quote]
select *,cast((s1.*z1) as dec(18,你要保留的小数位数)) as z1l from 表
takeshe 2009-10-21
  • 打赏
  • 举报
回复
那如果select *,(sl*zl)as zll from 表这样呢怎么写
SQL77 2009-10-21
  • 打赏
  • 举报
回复
SELECT 1/2
0
SELECT 1.0/2
0.5
SQL77 2009-10-21
  • 打赏
  • 举报
回复
select *,(sl*1.000/zl)as zll from 
精度问题
--小F-- 2009-10-21
  • 打赏
  • 举报
回复
select *,(s1*1.0/z1) as z1l from 表
--小F-- 2009-10-21
  • 打赏
  • 举报
回复
select *,(s1>1.0/z1) as z1l from 表
liangCK 2009-10-21
  • 打赏
  • 举报
回复
select *,(sl*1./zl)as zll from 表

27,579

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧