mysql最适合每个国家的两个表

时间:2013-04-20 18:53:50

标签: mysql greatest-n-per-group

对于统计数据,我想展示每个国家的“最佳制作人”。 有两个表:狗和主人。在所有者有狗的国家是所有其他nessecary。我算一下dog.id经常是父亲的身份。

对于指定的一个国家

    $result = mysql_query("
    SELECT 
    dog.father_id,  dog1.id, dog1.dogname, dog1.owner_id, dog.date_of_birth,
    COUNT(dog.father_id) anzahl,
    owner.country_short
    FROM 
    dog

    LEFT JOIN dog as dog1 ON
    (dog.father_id = dog1.id)
    LEFT JOIN owner  ON
    (dog1.owner_id = owner.id)

    WHERE dog.father_id !=0     
    AND dog1.date_of_birth >= DATE_SUB(CURDATE(), INTERVAL 10 YEAR)


    AND owner.country_short ='de'


    AND owner.kennel_note =''
    GROUP BY 
    dog.father_id
    ORDER BY 
    anzahl DESC 
    LIMIT 3

     ", $db) OR die(mysql_error());

    while($row = mysql_fetch_array($result))
    { ....

我如何为每个国家/地区(从数据库中自动获取)? 使用SET @的解决方案会给我一个解析错误。 非常感谢您的帮助。

0 个答案:

没有答案