开门见山
现在有3张表
A表user
{
id,username,userpassword,truename,email
}
B表group
{
id,groupname,groupdescription,groupdomain
} C表groupuser
{
userid,groupid
}
没有用外键,可能是sql语句定义它的 现在我的需求就是
根据他的group组进行查询他的user用户 但用户登录是根据他的user用户去查询他所在组里所有的成员
这年头就剩12分了,郁闷当初怎么散分了 吃了回扣的大虾马上帮帮忙[/code]
现在有3张表
A表user
{
id,username,userpassword,truename,email
}
B表group
{
id,groupname,groupdescription,groupdomain
} C表groupuser
{
userid,groupid
}
没有用外键,可能是sql语句定义它的 现在我的需求就是
根据他的group组进行查询他的user用户 但用户登录是根据他的user用户去查询他所在组里所有的成员
这年头就剩12分了,郁闷当初怎么散分了 吃了回扣的大虾马上帮帮忙[/code]
不明白这句话的意思根据
C表groupuser
{
userid,groupid
//多个userid 对应一个groupid 也就是说多个用户属于一个组
} B表group
{
id,groupname,groupdescription,groupdomain
}
B的这个ID是groupid
如果是这样的话
根据他的group组(groupname? )进行查询他的user用户
最苯最容易看的办法://人所属的组
select a.username from A表user a where a.id in
//根据该组ID获得所有的c.userid
(select c.userid from C表groupuser c where c.groupid=
//该组的ID号码( select b.id from B表group b where b.groupname=groupname?))
select * from user a , group b , groupuser c where a.id = c.userid and b.id = c.groupid and b.id= 填充这个是根据用户所在的组的ID查询所有成员
where id in (
select userid from groupuser
where groupid in
(
select groupid from groupuser where userid=? --当前用户ID
)
)