读书人

绝对具有挑战性的有关问题没挑战性我出

发布时间: 2011-11-28 19:15:02 作者: rapoo

高手进 绝对具有挑战性的问题没挑战性我出去
开门见山

Java 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]

[解决办法]
没有用外键,可能是sql语句定义它的
不明白这句话的意思

根据
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 a.* from user a left out join groupuser b on(a. id=b. userid) where b. groupid =?

-------

select a.* from user a left out join groupuser b on(a. id=b. userid)inner join group c on(b. groupid =c.id) where c. groupname =?

打完收工!我没吃回扣!

读书人网 >J2EE开发

热点推荐