voorletters, naam, geslacht, boete
    B   Niewenburg  V   25.00
    B   Niewenburg  V   140.00
    D   Moerman V   35.00
    D   Moerman V   50.00
    DD  Cools   V   75.00
    DD  Cools   V   85.00
    E   Bakker, de  M   30.00
    E   Bakker, de  M   35.00
    E   Bakker, de  M   90.00
    E   Bakker, de  M   95.00
    IP  Baalen, van V   140.00
    R   Permentier  M   100.00

我把它作为sql语句
SELECT VOORLETTERS, NAAM, GESLACHT, BEDRAG
FROM SPELER S
RIGHT JOIN BOETE B ON B.SPELERSNR = S.SPELERSNR
LEFT joiN BESTUURSLID BL ON BL.SPELERSNR = S.SPELERSNR
GROUP BY VOORLETTERS, NAAM, GESLACHT, BEDRAG

我怎么能让我只看到有两个或更多“博特”的人?
所以我得到这个答案
voorletters, naam, geslacht, boete
B   Niewenburg  V   25.00
B   Niewenburg  V   140.00
D   Moerman V   35.00
D   Moerman V   50.00
DD  Cools   V   75.00
DD  Cools   V   85.00
E   Bakker, de  M   30.00
E   Bakker, de  M   35.00
E   Bakker, de  M   90.00
E   Bakker, de  M   95.00

最佳答案

使用子选择使speler中有两行或更多行的人

SELECT VOORLETTERS, NAAM, GESLACHT, BEDRAG
FROM SPELER S
RIGHT JOIN BOETE B ON B.SPELERSNR = S.SPELERSNR
LEFT joiN BESTUURSLID BL ON BL.SPELERSNR = S.SPELERSNR
where s.naam in (select naam from (select naam, count(*) from speler group by name ) )
GROUP BY VOORLETTERS, NAAM, GESLACHT, BEDRAG

关于mysql - sql过滤2个或更多,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35943831/

10-09 15:03