高手请帮忙,如何去除重复的值??

YFile 2003-05-12 05:38:53
举例~
一个页面是显示两种记录
1.列出存在于某一工作组的用户
2.列出不存在于某一工作组的用户
但由于用户可以存在于不同的组中,用sql语句时就可能出先两边都有同一个姓名,但不在同一组中..我想把如果在这个组中出现的用户就不去显示他了.可不可以请各位高手帮帮忙??数据库是mysql(不是orcale不能用子查询)
我现在用的sql语句是:
1.SELECT contact.id,contact.name from contact,grouper,contact_grouper where contact_grouper.gid='$gid' and contact_grouper.id=contact.id and contact_grouper.gid=grouper.gid
2.SELECT contact.id,contact.name from contact,grouper,contact_grouper where contact_grouper.gid!='$gid' and contact_grouper.id=contact.id and contact_grouper.gid=grouper.gid
gid为组的id,id为用户的id.
...全文
89 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
YFile 2003-05-13
  • 打赏
  • 举报
回复
不行...没有任何记录了.............
sdsugar 2003-05-13
  • 打赏
  • 举报
回复
试试:SELECT contact.id,contact.name from contact,grouper,contact_grouper where contact_grouper.gid='$gid' and contact_grouper.id=(select id from contact where contact.id and contact_grouper.gid=grouper.gid)
sandyuk 2003-05-13
  • 打赏
  • 举报
回复

你试一下这一句是否可以
SELECT contact.id,contact.name from contact left join contact_grouper contact_grouper.id=contact.id where contact_grouper.gid!='$gid'
不在此工作组的用户。

海盗2019 2003-05-13
  • 打赏
  • 举报
回复
为了查找方便有时候可以考虑添加某个索引字段!
YFile 2003-05-13
  • 打赏
  • 举报
回复
是的,我要显示此工作组的用户,另一边显示不存在此工作的用户吗?
但是一个用户可能在多个组里,所以用!='$gid'还不够...
如果mysql能支持子查询就好了,再查一下该表的用户,不等用姓名就行了..
55555555555555,各位高手救命啊~
ahuasky 2003-05-13
  • 打赏
  • 举报
回复
帮你顶一下!
sandyuk 2003-05-12
  • 打赏
  • 举报
回复

SELECT contact.id,contact.name from contact left join contact_grouper contact_grouper.id=contact.id where contact_grouper.gid!='$gid'
sandyuk 2003-05-12
  • 打赏
  • 举报
回复

不太明白你的意思。
1.列出存在于某一工作组的用户
2.列出不存在于某一工作组的用户

你是想要到达什么要求呢?
一句显示此工作组的用户,另一句显示不存在此工作的用户吗?

YFile 2003-05-12
  • 打赏
  • 举报
回复
不对的,因为是多表查询,因为查出的gid是不同的,每条记录都不是同一条的.只是一条记录中的相同字段~
而distinct是消除重复记录所以不行的..
wsrboy 2003-05-12
  • 打赏
  • 举报
回复
字段前面加:distinct

21,889

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧