2013-08-26 35 views
-1

我有这个疑问在这里:MySQL查询困扰

select distinct oawa_id, 'Team Impact' as Club, FirstName, LastName 
from team_impacts ti 
left join session_participants sp 
    on (sp.member_id = ti.id) 
    or (sp.member_id = ti.oawa_id) 
order by LastName asc, FirstName asc 

,这为我提供了一个用户列表,但一些用户具有相同的姓氏和名字以及一些配备了oawa_id和一些别吨。例如:

这是记录列表:

  1. 布拉德·梅有一个oawa_id
  2. 布拉德·梅可是没有一个oawa_id

这没关系,如果有些人不具有oawa_id,但对于像这样的情况,如果人们使用相同的名字,请使用oawa_id,并忽略没有的名称。这只适用于同名的人。

有什么建议吗?

+0

什么是你的问题?你的样本数据在哪里? –

+0

在此处添加您的代码,以便我们可以看到所有内容http://sqlfiddle.com/ – cmorrissey

回答

0

所有你需要做的是重组的一组查询by子句

select max(oawa_id) as oid, 'Team Impact' as Club, FirstName, LastName 
            from team_impacts ti 
          left join session_participants sp 
            on (sp.member_id = ti.id) 
            or (sp.member_id = ti.oawa_id) 
          group by Club,FirstName, LastName 
          order by LastName asc, FirstName asc