34,588
社区成员
发帖
与我相关
我的任务
分享
create table employee(
empId varchar(20),
userId varchar(20)
)
create table user(
userId varchar(20),
depId varchar(20)
)
create table dep(
depId varchar(20),
depName var(20)
)
create table pop(
popId varchar(20),
popName varchar(20)
)
create table T_dep_pop(
depId varchar(20),
popId varchar(20)
)
insert into dep values('1','办公室');
insert into pop values('1','青秀区');
insert into pop values('2','罗湖区');
insert into pop values('3','秀峰区');
insert into T_dep_pop values('1','1);
insert into T_dep_pop values('1','2');
insert into user values('1','1');
insert into employee values('1','1');
<!--部门映射-->
<set name="popedoms" table="T_DepartmentPopedom" lazy="true" outer-join="false" cascade="all">
<key column="departmentId"/>
<many-to-many class="entity.basic.Popedom" column="popedomId" />
</set>
<!--辖区映射-->
<set name="departments" table="T_DepartmentPopedom" lazy="true">
<key column="popedomId"/>
<many-to-many class="entity.basic.Department" column="departmentId" />
</set>
<!-- 人员映射-->
<many-to-one name="userInfo" class="entity.system.UserInfo"
fetch="select" lazy="proxy" cascade="none">
<column name="userInfoId" length="32" not-null="true" />
</many-to-one>
<!-- 用户映射-->
<many-to-one
name="department"
column="departmentId"
class="entity.basic.Department"
insert="false"
lazy="proxy"
/>
select * from 人员表 a,用户表 b,(
select * from 部门辖区中间表
where 辖区ID=(select 辖区ID from 部门辖区中间表
where 部门ID=(select 用户所属部门ID from 用户表
where 用户ID=@用户ID)) c
where a.用户ID=b.用户ID and b.部门ID=c.部门ID
select p from Proposer as p, UserInfo as u,
(select T from T_DepartmentPopedom as T where popedomId in
(select popedomId from T_DepartmentPopedom where departmentId =
(select departmentId from UserInfo as us where us.id = '1'))) as c
where p.userInfo.id = u.id
and u.department.id = c.departmentId
and c.popedomId = p.Popedom.id