SELECT status, COUNT(status) - (COUNT(id) - COUNT(distinct id)) AS status_count FROM VIEW_NAME GROUP BY STATUS_FLAG
VIEW_NAMEはいろいろJOINしてIDが重複した状態を想定。
そのままCOUNT(status)すると、重複したぶん多い数が返る。
そこから(COUNT(id) - COUNT(distinct id))で重複した分の数を引く。
VIEW_NAMEはいろいろJOINしてIDが重複した状態を想定。
そのままCOUNT(status)すると、重複したぶん多い数が返る。
そこから(COUNT(id) - COUNT(distinct id))で重複した分の数を引く。
コメントする