34,593
社区成员
发帖
与我相关
我的任务
分享
select A.id, DepartMentID=d.name,CompaneyBankID=c.name,a.BillNO ,a.ShoukuanMoney
from A,DepartMent d,CompaneyBank c
where A.DepartMentID=d.id and A.CompaneyBankID=c.id
/*
id DepartMentID CompaneyBankID BillNO ShoukuanMoney
----------- -------------------- -------------------- ----------- ----------------------
1 财务部 中国银行 111 100
2 财务部 建设银行 222 200
3 销售部 工商银行 333 300
*/
create table A (ID int, DepartMentID int , CompaneyBankID int,BillNO int,ShoukuanMoney float)
insert into A values(1 , 1 , 1,111,100)
insert into A values(2 , 1 , 2,222,200)
insert into A values(3 , 2 , 3,333,300)
create table DepartMent (ID int, Name varchar(20))
insert into DepartMent values(1 , '财务部')
insert into DepartMent values(2 , '销售部')
create table CompaneyBank (ID int, Name varchar(20))
insert into CompaneyBank values(1 , '中国银行')
insert into CompaneyBank values(2 , '建设银行')
insert into CompaneyBank values(3 , '工商银行')
select * from A
select A.id, DepartMentID=d.name,CompaneyBankID=c.name,a.CompaneyBankID ,a.BillNO ,a.ShoukuanMoney
from A,DepartMent d,CompaneyBank c
where A.DepartMentID=d.id and A.CompaneyBankID=c.id
/*
id DepartMentID CompaneyBankID CompaneyBankID BillNO ShoukuanMoney
----------- -------------------- -------------------- -------------- ----------- ----------------------
1 财务部 中国银行 1 111 100
2 财务部 建设银行 2 222 200
3 销售部 工商银行 3 333 300
*/
drop table A
drop table DepartMent
drop table CompaneyBank
--如果是要查询结果的话
SELECT a.id,d.[Name],c.[Name]
FROM a,DepartMent d,CompaneyBank c
WHERE a.DepartMentID = d.ID
AND a.CompaneyBankID = c.ID
select ID,
DepartMentID=(select Name from DepartMent where ID=A.DepartMentID),
CompaneyBankID=(select Name from CompaneyBank where ID=A.CompaneyBankID),
BillNO,
ShoukuanMoney
from A
--lz,你的表中,2列定义成int型了,要先转成字符型
alter table a alter column departmentid VARCHAR(20)
alter table a alter column CompaneyBankID VARCHAR(20)
update a
set departmentID = d.name,
companeybankid = c.name
from department d,companeybank c
where a.departmentid = d.ID
and a.CompaneyBankID = c.id
SELECT * FROM a
select A.id, DepartMentID=d.name,CompaneyBankID=c.name,a.CompaneyBankID ,a.BillNO ,a.ShoukuanMoney
from A,DepartMent d,CompaneyBank c
where A.id=d.id and A.id=c.id
/*
id DepartMentID CompaneyBankID CompaneyBankID BillNO ShoukuanMoney
----------- -------------------- -------------------- -------------- ----------- ----------------------
1 财务部 中国银行 1 111 100
2 销售部 建设银行 2 222 200
2 销售部 工商银行 2 222 200
*/
SELECT A.ID,D.CompaneyBank,B.CompaneyBank,BillNO,ShoukuanMoney
FROM A JOIN DepartMent AS D JOIN CompaneyBank AS B
ON A.DepartMentID=D.ID AND A.CompaneyBankID=B.ID