首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

SQL语句?解决方案

2011-12-29 
SQL语句?有2个表:T_Project和T_User。T_User有2个字段:f1:用户IDf2:用户名T_Project有3个字段:f0:项目名称f

SQL语句?
有2个表:T_Project和T_User。
        T_User有2个字段:
        f1:用户ID
        f2:用户名
        T_Project有3个字段:
        f0:   项目名称
        f1:项目负责人的用户ID
        f2:项目承办人的用户ID
        希望用SELECT   语句返回T_Project表的数据集里,将T_Project.f1、T_Project.f2分别替换为T_User.f2。
        如果只替换一个,例如T_Project.f1,可以用下面的SQL语句实现:
        SELECT   FROM   T_Project.f0,T_User.f2   T_Project  
        INNER   JOIN     T_User       ON   T_Project.f1=T_User.f1
        如果同时替换两个,SQL语句?


[解决办法]
Select
A.f0,
B.f2 As 项目负责人,
C.f2 As 项目承办人
From
T_Project A
Inner Join
T_User B
On A.f1 = B.f1
Inner Join
T_User C
On A.f2 = C.f1
[解决办法]
子查询
SELECT f0,f1=(SELECT T_User.f2 FROM T_User WHERE T_User.f1=T_Project.f1 ),
f2=(SELECT T_User.f2 FROM T_User WHERE T_User.f1=T_Project.f2 ) FROM T_Project
[解决办法]
试试看
SELECT a.f0,
case a.f1 when b.f1 then b.f2 end a.f1,
case a.f2 when b.f1 then b.f2 end a.f2,
from T_Project a,T_User b
order by a.f0

热点排行