无法从查询中选择唯一值

时间:2010-06-21 17:23:20

标签: mysql

我想在单独的表中选择字段的名称,但是我只能这样做一次。 Cname1会工作,Cname2不会。问题是我想要m.categoryChildID2的唯一categoryChild名称,但我知道如何引用它的唯一方法是使用c.categoryChild但这已经与m.categoryChildID1一起使用了。

我知道我可以重做我的桌子,但如果可能,我不愿意这样做吗?

select c.categoryChild as cname1,c.categoryChild as cname2 
  FROM categoryChild as c, members as m 
 WHERE m.memberID=50 
   AND m.categoryChildID1=4 
   AND m.categoryChildID1=c.categoryChildID 
   AND m.categoryChildID2=5  m.categoryChildID2=c.categoryChildID

由于 布赖恩

1 个答案:

答案 0 :(得分:1)

两次加入categoryChild表

SELECT c1.categoryChild as cname1,c2.categoryChild as cname2 
FROM members AS m,
JOIN categoryChild AS c1 ON(m.categoryChildID1 = c1.categoryChildID)
JOIN categoryChild AS c2 ON(m.categoryChildID2 = c2.categoryChildID)
WHERE m.memberID=50