用户表:UserId
0001
0002
用户部门关系表:
UserId DepId
0001 dep001
0001 dep002如何通过用户表Join用户部门关系表 让0001只显示一个部门信息(dep001,dep002 任意一个)
0001
0002
用户部门关系表:
UserId DepId
0001 dep001
0001 dep002如何通过用户表Join用户部门关系表 让0001只显示一个部门信息(dep001,dep002 任意一个)
--照你现在给的没必要join,如果要用户表还有别的字段join你自己也改的出来吧?
select * from 用户部门关系表 a where not exists(
select 1 from 用户部门关系表 where UserId=a.UserId and DepId<a.DepId--这里也可以是大于,随你
)
on a.userid = b.userid order by b.depid
SELECT A.*,B.DepId
FROM 用户表 A
OUTER APPLY (
SELECT TOP 1 DepId
FROM 用户部门关系表
WHERE UserId = A.UserId
) AS B
FROM 用户表 A
OUTER APPLY (
SELECT TOP 1 DepId
FROM 用户部门关系表
WHERE UserId = A.UserId
ORDER BY DepId
) AS B
select m.userid , max(n.depid) depid from 用户表 m, 用户部门关系表 n where m.UserId = n.UserId group by m.UserId
From 用户表 t1, 用户部门关系表 t2
where t1.UserID = t2.UserID
group by t1.userid