SELECT A.ID, B.UserName AS UserName1, C.UserName AS UserName2 FROM Source AS A INNER JOIN User AS B ON A.UserID1 = B.UserID INNER JOIN User AS C ON A.UserID2 = C.UserID
那就再join一次嘛select id,b.username as username1,c.username as username2 from source a left join user b on a.userid1=b.userid left join user c on a.userid2=c.userid
--是这个意思吗? create table [user](userid int,username varchar(10))insert into [user] select 1 , 'aaaaa' insert into [user] select 2 , 'bbbb' insert into [user] select 3 , 'ccccc' create table [source](id int,userid1 int,userid2 int)insert into [source] select 1 , 2 , 3 insert into [source] select 2 , 3 , 1 insert into [source] select 3 , 1 , 2 select A.id,userid1=(select username from [user] where userid = A.userid1), userid2=(select username from [user] where userid = A.userid2) from [source] A/* id userid1 userid2 =----------------------- 1 bbbb ccccc 2 ccccc aaaaa 3 aaaaa bbbb*/drop table [user],[source]
select T1.userid1,T2.username,T1.userid2,T3.username from Source T1,user T2,user T3 where T1.userid1=T2.userid and T1.userid2=T3.userid
SELECT A.ID, B.UserName AS UserName1, C.UserName AS UserName2 FROM Source AS A INNER JOIN User AS B ON A.UserID1 = B.UserID INNER JOIN User AS C ON A.UserID2 = C.UserID 结果: 1 bbbb ccccc 2 ccccc aaaaa 3 aaaaa bbbb
from source a left join user b on a.userid1=b.userid
left join user c on a.userid2=c.userid
--是这个意思吗?
create table [user](userid int,username varchar(10))insert into [user] select 1 , 'aaaaa'
insert into [user] select 2 , 'bbbb'
insert into [user] select 3 , 'ccccc'
create table [source](id int,userid1 int,userid2 int)insert into [source] select 1 , 2 , 3
insert into [source] select 2 , 3 , 1
insert into [source] select 3 , 1 , 2
select A.id,userid1=(select username from [user] where userid = A.userid1),
userid2=(select username from [user] where userid = A.userid2)
from [source] A/*
id userid1 userid2
=-----------------------
1 bbbb ccccc
2 ccccc aaaaa
3 aaaaa bbbb*/drop table [user],[source]
from Source T1,user T2,user T3
where T1.userid1=T2.userid and T1.userid2=T3.userid
FROM Source AS A
INNER JOIN User AS B
ON A.UserID1 = B.UserID
INNER JOIN User AS C
ON A.UserID2 = C.UserID
结果:
1 bbbb ccccc
2 ccccc aaaaa
3 aaaaa bbbb
"FROM Wo_SrcChild INNER JOIN (Wo_SrcType INNER JOIN (Wo_Source INNER JOIN Wo_Users ON Wo_Source.Show_UserID = Wo_Users.UserID) ON Wo_SrcType.Type_id = Wo_Source.Src_TypeID) ON Wo_SrcChild.Child_id = Wo_Source.Src_ChildID " & _
"WHERE Wo_Source.Src_IsOver=1 " 按2楼的写法好难改啊。
"FROM Wo_SrcChild INNER JOIN Wo_SrcType as b on Wo_SrcChild.UserID1=b.UserID INNER JOIN
Wo_SrcType as c on Wo_SrcChild.UserID1=c.UserID" & _
"WHERE Wo_Source.Src_IsOver=1 "
楼主看对不对?
from Source T1,user T2,user T3
where T1.userid1=T2.userid and T1.userid2=T3.userid 这个应该比2楼的写法简单