Orale怎么可以这样分组

Orale如何可以这样分组USER_IDstate711949898 37119498983711949898371194989837119498981711949898371194

Orale如何可以这样分组
USER_ID       state
711949898 3
711949898         3
711949898         3
711949898         3
711949898         1
711949898         3
711949898         2
99992899         3
711949898    1

如果用oracle语句 将 以上数据进行分组成

USER_ID     count(state=1)     count(state=2)     count(state=3)
711949898        2                 1                   4
99992899         0                 0                   1