2012-09-07 129 views
0

我需要一些帮助与我的查询。 我有2个表:MYSQL:如何限制内部连接?

all: art|serie 
sootv: name|art|foo 

我需要得到像导致名称|意甲。 我的查询是:

SELECT t2.NAME, 
    t1.serie 
FROM (
    SELECT * 
    FROM `all` 
    WHERE `serie` LIKE '$serie' 
    ) t1 
INNER JOIN sootv t2 
    ON t1.art = t2.art; 

它的工作原理,但sootv表包含像

name|art|foo 
abc | 1 | 5 
abc | 1 | 6 

数据,我得到2个相同的结果。它不是我所需要的。 请帮助我 - 我怎么能得到结果只有一个:ABC | 1

回答

1

添加DISTINCTSELECT条款

SELECT DISTINCT t2.NAME, 
     t1.serie 
FROM (
    SELECT * 
    FROM `all` 
    WHERE `serie` LIKE '$serie' 
    ) t1 
INNER JOIN sootv t2 
    ON t1.art = t2.art; 

或尝试优化它

SELECT DISTINCT t2.NAME, 
     t1.serie 
FROM `all` t1 
     INNER JOIN sootv t2 
      ON t1.art = t2.art 
WHERE t1.`serie` LIKE '$serie' 
+0

谢谢,它是什么,我需要! –