上面的问题写错了,应该是下面的有两个表
表aaa
xmh xmmc
101 差旅费
102 酒水费
103 车船费表bbb
fbh fxm fnd fxmh fje
00121 王大海 2003 101 1200
00121 王大海 2003 102 600
00121 王大海 2003 103 700
00122 李大河 2003 101 1200
00122 李大河 2003 102 600
00122 李大河 2003 103 700
00121 王大海 2002 101 1200
00121 王大海 2002 102 600
00121 王大海 2002 103 700 sql 如下select fbh as 编号,fxm as 姓名,fnd as 年度,aaa.xmmc as 项目名称,fje as 金额 from bbb inner join aaa on bbb.fxmh=aaa.xmh where fnd='2003'
结果如下:
编号 姓名 年度 项目名称 金额
00121 王大海 2003 差旅费 1200
00121 王大海 2003 酒水费 600
00121 王大海 2003 车船费 700
00122 李大河 2003 差旅费 1200
00122 李大河 2003 酒水费 600
00122 李大河 2003 车船费 700select fbh as 编号,fxm as 姓名,fnd as 年度,aaa.xmmc as 项目名称,fje as 金额 from bbb inner join aaa on bbb.fxmh=aaa.xmh where fnd='2002'//和上边一样,就是年度改成了2002。什么也不显示出来。为什么?我用的是sql server 2000
表aaa
xmh xmmc
101 差旅费
102 酒水费
103 车船费表bbb
fbh fxm fnd fxmh fje
00121 王大海 2003 101 1200
00121 王大海 2003 102 600
00121 王大海 2003 103 700
00122 李大河 2003 101 1200
00122 李大河 2003 102 600
00122 李大河 2003 103 700
00121 王大海 2002 101 1200
00121 王大海 2002 102 600
00121 王大海 2002 103 700 sql 如下select fbh as 编号,fxm as 姓名,fnd as 年度,aaa.xmmc as 项目名称,fje as 金额 from bbb inner join aaa on bbb.fxmh=aaa.xmh where fnd='2003'
结果如下:
编号 姓名 年度 项目名称 金额
00121 王大海 2003 差旅费 1200
00121 王大海 2003 酒水费 600
00121 王大海 2003 车船费 700
00122 李大河 2003 差旅费 1200
00122 李大河 2003 酒水费 600
00122 李大河 2003 车船费 700select fbh as 编号,fxm as 姓名,fnd as 年度,aaa.xmmc as 项目名称,fje as 金额 from bbb inner join aaa on bbb.fxmh=aaa.xmh where fnd='2002'//和上边一样,就是年度改成了2002。什么也不显示出来。为什么?我用的是sql server 2000
select fbh as 编号,fxm as 姓名,fnd as 年度,aaa.xmmc as 项目名称,fje as 金额 from bbb inner join aaa on bbb.fxmh=aaa.xmh where fnd like '%2002%'
select fbh as 编号,fxm as 姓名,fnd as 年度,aaa.xmmc as 项目名称,fje as 金额 from bbb inner join aaa on bbb.fxmh=aaa.xmh
这个只能显示2003年的,我试过了
我的数据就是上面的数据,其他没有了,有问题的话告诉我,我的数据类型全部是char.
update bbb set fxmh='差旅费' where fxmh='101'
只能改第一个101,其余的101不变,再运行一次,接下来的一个又改了,剩下的还是没有改,这是为什么?
select fbh as 编号,fxm as 姓名,fnd as 年度,aaa.xmmc as 项目名称,fje as 金额 from
bbb inner join aaa on ltrim(rtrim(bbb.fxmh))=ltrim(rtrim(aaa.xmh))
update bbb set fxmh='差旅费' where fxmh='101'
只能改第一个101,其余的101不变,再运行一次,接下来的一个又改了,剩下的还是没有改,这是为什么?你是不是在update之前设置了
set rowcount 1
如果是设置成上面的那么就对了!
--那你再试试这个,不写连接条件!
select fbh as 编号,fxm as 姓名,fnd as 年度,aaa.xmmc as 项目名称,fje as 金额 from aaa,bbb
set rowcount 1
如果是设置成上面的那么就对了!没有弄过这个东西。
create table #aaa(xmh char(3),xmmc char(10))
insert into #aaa select '101' , '差旅费'
union all select '102', '酒水费'
union all select '103' , '车船费'
create table #bbb(fbh char(6),fxm char(10),fnd char(4),fxmh char(3),fje char(10))
insert into #bbb select '00121', '王大海', '2003', '101', '1200'
union all select '00121' , '王大海' , '2003' , '102' , '600'
union all select '00121' , '王大海' , '2003' , '103' , '700'
union all select '00122' ,'李大河' , '2003' , '101' , '1200'
union all select '00122', '李大河' , '2003' , '102' , '600'
union all select '00122' , '李大河' ,'2003', '103' , '700'
union all select '00121' , '王大海' , '2002' , '101' , '1200'
union all select '00121' , '王大海' , '2002' , '102' , '600'
union all select '00121' , '王大海' , '2002' , '103' , '700'
select fbh as 编号,fxm as 姓名,fnd as 年度,aaa.xmmc as 项目名称,fje as 金额 from #bbb bbb inner join #aaa aaa on bbb.fxmh=aaa.xmh where fnd='2002'
select fbh as 编号,fxm as 姓名,fnd as 年度,aaa.xmmc as 项目名称,fje as 金额 from #bbb bbb inner join #aaa aaa on bbb.fxmh=aaa.xmh where fnd='2003'