>데이터 베이스 >MySQL 튜토리얼 >sql 两个字段相减语句

sql 两个字段相减语句

WBOY
WBOY원래의
2016-06-07 17:47:549739검색

sql 两个字段相减语句本文章搜索了大量来自网络的关于sql 两个字段相减语句与函数代码,举例说明了两个字段相减做法。

sql 两个字段相减语句
本文章搜索了大量来自网络的关于sql 两个字段相减语句与函数代码,举例说明了两个字段相减做法。

select a.字段1,字段2=a.字段2-isnull((select 字段2 from 表2 where a.字段1=字段1),0) from 表1 a

方法二

create  table 表1( 字段1 varchar(50),   字段2 int)
insert into 表1
select       '111001' ,   10  union all
select       '111002' ,   9 union all
select       '111003'  ,  12 union all
select       '111004'  ,  23

create  table 表2( 字段1 varchar(50),   字段2 int)
insert into 表2
select       '111001' ,   3  union all
select       '111002' ,   2 union all
select       '111003'  ,  12

select a.字段1,  (a.[字段2] - (isnull(b.[字段2],0)) ) as 字段2 from 表1 a left join 表2 b
on a.[字段1] = b.[字段1]

结果: 字段1    字段2
      111001    7
      111002    7
      111003    0(不显示) 
      111004    23


方法三


有两个相同的表t1和t2,都有字段a(字符),b(数值),c(数值),内容如下:
t1             t2
a  b  c        a  b  c
a1 10 20       a2 2  10
a2 10 20       a3 3  15
a3 10 20
a4 10 20

select t1.a as a,(t1.b - isnull(t2.b,0)) as b,(t1.c - isnull(t2.c,0)) as c from [t1] left join [t2] on (t1.a = t2.a)

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.