あなたはクエリでそれを行うことができます
SELECT gender,
SUM(CASE WHEN Handedness = 'Left-handed' THEN 1 ELSE 0 END) left_handed,
SUM(CASE WHEN Handedness = 'Right-handed' THEN 1 ELSE 0 END) right_handed,
COUNT(*) total
FROM Table1
GROUP BY gender WITH ROLLUP
出力:
| | 性別 | 左利き | 左利き | 右利き | 合計 |
|--------|-------------|--------------|-------|
| | 女性 | 女性 | 1 | 4 | 5 |
| | 男性 | 2 | 3 | 5 |
| | (ヌル) | 3 | 7 | 10 | -- これは、WITH ROLLUP によって作成された合計です。
これがSQLFiddleのデモです
私はCIの専門家ではありませんが、コードは次のようになります
$sql = "SELECT gender,
SUM(CASE WHEN Handedness = 'Left-handed' THEN 1 ELSE 0 END) left_handed,
SUM(CASE WHEN Handedness = 'Right-handed' THEN 1 ELSE 0 END) right_handed,
COUNT(*) total
FROM Table1
GROUP BY gender WITH ROLLUP";
$data = $this->db->query($sql)->result_array();