MySQLのSUM関数で条件付きの集計をする

下記のような[動物テーブル]から、

動物名 性別
いぬ オス 1
いぬ メス 2
いぬ メス 2
ねこ オス 1
ねこ オス 3
ねこ メス 5

下記のような結果を出したいときのSQL文。

動物名 オスの数 メスの数
いぬ 1 4
ねこ 4 5
SELECT 
    動物名,
    SUM(CASE
        WHEN 性別 = オス THEN 数
        ELSE 0
    END) AS オスの数,
    SUM(CASE
        WHEN 性別 = メス THEN 数
        ELSE 0
    END) AS メスの数
FROM
    動物テーブル
GROUP BY 動物名
;